利用外部郵箱發送郵件的方法linux
bin/mail會默認使用本地sendmail發送郵件,這樣要求本地的機器必須安裝和啓動Sendmail服務,配置很是麻煩,並且會帶來沒必要要的
|
三種經常使用格式發信服務器
mail -s test ccc@35.com #第一種方法,你能夠把當前shell當成編輯器來用,編輯完內容後Ctrl-D能夠輸入抄送人,可用逗號分隔,回車後發送。dom
echo 「mail content」|mail -s test ccc@35.com #第二種方法,使用管道編輯器
mail -s test ccc@35.com < file #第三種方法,以file的內容爲郵件內容發信ide
發附件測試
若是你的系統裏沒有uuencode命令的話,請先安裝sharutils(yum install sharutils)ui
uuencode 須要兩個參數,第一個是你要發送的文件(們),固然這個也能夠用管道來作,第二個是顯示的文件名spa
uuencode 1.txt 1.txt | mail -s test2ccc@35.com(linux下的文本文件最好先unix2dos)unix
tar zcf – /tmp/1/ |uuencode 1.tgz | mail -s test1ccc@35.cn4e.com
即有附件又有郵件正文
先寫好郵件, 好比叫 mymail,而後
uuencode <附件文件名> <附件文件名> >> mymail
或者cat <附件文件名> | uuencode <附件文件名> >> mymail
而後編輯你的 mymail 文件,在前面寫上信的正文。 而後寄出。
實際操做:
echo ‘hello zhengwen’ >zhengwen.txt
cat 1.gif | uuencode 1.gif>> zhengwen.txt
cat zhengwen.txt |mail -s test1 ccc@35.com
將信件送給一個或以上的電子郵件地址。
mail -s 標題 -c user1 user2 < mail.txt
mail -s biaoti zhucsong@35.com -c chaosong@35.com -b michao@35.com < 1.txt
檢查所傳送的電子郵件是否送出,或滯留在郵件服務器中
語法:/usr/lib/sendmail -bp
若屏幕顯示爲「Mail queue is empty」 的信息,表示mail 已送出。
若爲其餘錯誤信息,表示電子郵件因故還沒有送出。
附:
linux mail命令參數:
i 忽略 tty 的中斷訊號。 (interrupt)
I 強迫設成互動模式。 (Interactive)
v 列印出訊息,例如送信的地點、狀態等等。 (verbose)
n 不讀入 mail.rc 設定檔。
s 郵件標題。
c cc 郵件地址。
b bcc 郵件地址。
系統收到郵件都會保存在「/var/spool/mail/[linux用戶名]」文件中。在linux中輸入mail,就進行了收件箱,並顯示二十封郵件列表。
此時命令提示符爲」&」:(能夠輸入如下命令對郵件進行相關操做)& help //若是不會使用或者忘記了什麼命令,就輸入 help 或者 ? 來獲取幫助 Mail Commands t <message list> 打印出信息 【注意】多個信息用空格分開,如 t 1 7 n 打印出下一條信息 e <message list> 編輯信息 f <message list> 輸出信息的頭行 d <message list> 刪除信息 s <message list> file 追加信息到文件file u <message list> 不刪除某信息 R <message list> 回覆發件人 r <message list> 回覆發件人和本信息全部的收件人 pre <message list> 保留信息在 /usr/spool/mail 1* m <user list> 發郵件,多個收件人用空格分開【須要sendmail支持】 q quit, saving unresolved messages in mbox 2* x quit, do not remove system mailbox h print out active message headers ! 讓shell執行某命令,如 !ls 輸出ls命令結果 cd [directory] 改變目錄,這裏不用 !cd,但打印當前目錄須要 !pwd