在Linux系統下mail命令的測試html
1. 最簡單的一個例子:linux
mail -s test admin@aispider.comshell
這條命令的結果是發一封標題爲test的空信給後面的郵箱,若是你有mta而且後面的郵箱不會擋這種可能莫名奇妙的信的時候,就能收到這封信了。若是你不想被這種亂七八糟的事情干擾,後面的郵箱請使用本地賬戶。 服務器
2. 第二個例子:網絡
三種經常使用格式發信併發
mail -s test admin@aispider.com #第一種方法,你能夠把當前shell當成編輯器來用,編輯完內容後Ctrl-D結束編輯器
echo 「mail content」|mail -s test admin@aispider.com #第二種方法,我用的最多,多是喜歡管道的緣故吧ide
mail -s test admin@aispider.com< file #第三種方法,以file的內容爲郵件內.容發信post
mail -s test admin@aispider.com < file #第三種方法,以file的內容爲郵件內容發信測試
mail -s test -c admin@aispider.com root@aispider.com< file #第四種方法,給多個用戶發送郵件
3. 第三個例子,帶附件的郵件
若是你的系統裏沒有uuencode命令的話,請先安裝sharutils(yum install -y sharutils)
uuencode 須要兩個參數,第一個是你要發送的文件(們),固然這個也能夠用管道來作,第二個是顯示的文件名
uuencode /home/yfang/a.gif a.gif|mail -s pictest admin@aispider.com
tar czf - /home/yfang/ | uuencode home.tgz |mail -s pictest admin@aispider.com
ps: 順便補一句,slackware下的mail好像有一個-a參數,能夠直接添加附件,我沒有用過。
四、閱讀郵件
Linux下Mail命令收集系統收到郵件都會保存在「/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
A <message list> consists of integers, ranges of same, or user names separated
by spaces. If omitted, Mail uses the last message typed.
A <user list> consists of user names or aliases separated by spaces.
Aliases are defined in .mailrc in your home directory.
1* 若是閱讀過某信息,執行q退出時候,mail會把閱讀過的信息「取回」放在 ~/mbox,執行pre後就不取回。若是退出時執行x命令則不會取回信息。
2* 這三句不難理解,但很差翻譯(本人水平問題),也就保留原文了
所支持的所有命令列表:
& l
Commands are:
next, alias, print, type, Type, Print, visual, top, touch, preserve,
delete, dp, dt, undelete, unset, mail, mbox, more, page, More, Page,
unread, U, !, copy, chdir, cd, save, source, set, shell, version,
group, write, from, file, folder, folders, ?, z, headers, help, =,
Reply, Respond, reply, respond, edit, echo, quit, list, xit, exit,
size, hold, if, else, endif, alternates, ignore, discard, retain,
saveignore, savediscard, saveretain, core, #, clobber
& t 7 //閱讀第7封信息,閱讀時,按空格鍵就是翻頁,按回車鍵就是下移一行
& d 10 //刪除第10封信息
& d 10-100 //刪除第10-100封信息
& top //顯示當前指針所在的郵件的郵件頭
& file //顯示系統郵件所在的文件,以及郵件總數等信息
& x //退出mail命令平臺,並不保存以前的操做,好比刪除郵件
& q //退出mail命令平臺,保存以前的操做,好比刪除已用d刪除的郵件,
//已閱讀郵件會轉存到當前用戶家目錄下的mbox文件中
//若是在mbox中刪除文件纔會完全刪除。
--------------------------------------
Linux郵件命令用法
1. 將文件當作電子郵件的內容送出
語法:mail -s 「主題」用戶名@地址< 文件
例如:
mail -s 「program」 user < file.c 將file.c
當作mail的內容,送至user,主題爲program。
2. 傳送電子郵件給本系統用戶
語法:mail 用戶名
3. 傳送電子郵件至外地用戶
語法: mail 用戶名@接受地址
.../usr/lib/sendmail -bp
......「Mail queue is empty」 ......mail ....
例如:
mailtest@hotmail.com
Subject : mail test
:
鍵入信文內容
: :
按下Ctrl+D 鍵或. 鍵結束正文。
連按兩次Ctrl+C鍵則中斷工做,不送此信件。
Cc( Carbon copy) : 複製一份正文,給其餘的收信人。
4. 檢查所傳送的電子郵件是否送出,或滯留在郵件服務器中
語法:/usr/lib/sendmail -bp
若屏幕顯示爲「Mail queue is empty」 的信息,表示mail 已送出。
若爲其餘錯誤信息,表示電子郵件因故還沒有送出。
=================================
mail、Mail 或 mailx 命令用途發送和接收郵件。語法讀取新來的郵件mail -email -f [ -dHNn ] [ -F ] [ FileName ]mail [ -dHNn ] [ -F ] [ -u UserID ]發送郵件mail [ -s Subject ] [ -c Address(es) ] [ -dinNv ] Address描述mail 命令調用郵件實用程序,使您可以: * 讀取新來的郵件。 * 發送郵件。另外,能夠使用可用的選項和子命令來定製您發送和接收郵件的方法。mail 命令可用於系統郵箱和我的郵箱兩類郵箱。新來的郵件存儲在系統郵箱內。缺省狀況下,用戶的系統郵箱是位於 /var/spool/mail 目錄中的一個文件。郵箱文件以用戶標識命名。例如,若是用戶標識是 jeanne,那麼系統郵箱是 /var/spool/mail/jeanne。缺省狀況下,當用戶讀取、刪除或保存在其系統郵箱內的全部郵件時,郵箱被刪除。要不刪除郵箱,請使用 set 子命令來設置 keep 選項。標誌-c Address(es) 指定要向其發送消息副本的用戶列表。能夠指定一個或多個地址。當指定多於一個地址時,地址列表必須在引號("")內。-e 測試系統郵箱內是否有郵件。若是存在要讀取的郵件,mail 實用程序不會寫入任何東西並帶一個成功返回碼而退出。-f FileName 從指定的文件讀取消息。若是沒有指定文件操做數,那麼從 mbox 讀取消息。從讀取消息退出時,未刪除的消息會寫到這個文件中。-F 將消息記錄在以收件人命名的文件中。該名稱是在郵件標題中 To: 行的地址的最前部分。若是設置則覆蓋 record 變量。-H 僅寫標題摘要。-i 忽略 tty 中斷信號。-n 禁止讀取 /usr/share/lib/Mail.rc 文件。-N 禁止標題的初始打印。-s Subject 指定將建立的消息的主題。-u UserID 指定與執行 mail -f /var/spool/mail/UserID 等同的縮寫。爲指定的用戶的郵箱啓動 Mail 程序。必須有指定郵箱的訪問許可權。-v 將 Mail 程序置爲詳細方式。顯示傳送到用戶終端的詳細信息。示例 1. 要啓動 Mail 程序並列出郵箱中的消息,請在命令行提示符下輸入如下信息: mail mail 命令列出在系統郵箱中的每條消息。郵件系統而後顯示郵箱提示符(?)來表示等待輸入。當您看到此提示符時,請輸入郵箱子命令。要查看子命令列表,請輸入: ? 本條目列出 Mail 子命令。 2. 要將消息 letter 發送到收件人 user1@host1 並抄送給 user2@host2 和 user3@host3,請輸入: mail -c "user2@host2 user3@host3" user1@host1<letter 3. 要查看我的郵箱的內容,請輸入: mail -f 此命令顯示在我的郵箱 $HOME/mbox 中的消息列表。 4. 要查看指定郵件文件夾的內容,請輸入: mail -f +dept 此命令顯示在 dept 文件夾中的消息列表。 5. 要將消息發送到本地系統的用戶,請輸入: mail ron 完成將消息輸入到用戶 ron 時,按 Enter 鍵以及 .(句號)或 Ctrl+D 來退出編輯器併發送消息。要肯定某用戶是否在本地系統,請在 /etc/passwd 文件中查看該用戶名。 若是消息成功發送,將不會收到通知。若是消息沒法發送,將發送給您一個錯誤信息。 6. 要將一個文件經過郵件發送到本地系統的另外一位用戶,請輸入: mail karen < letter1 此命令將文件 letter1 的內容發送到本地系統的用戶 karen。命令發送文件後,Mail 程序顯示命令行提示符。 7. 要將消息發送到一個遠程系統用戶,請輸入: mail dale@zeus 如今能夠建立一個到 dale 的消息。在本示例中,發送消息到遠程系統 zeus 上的 dale 用戶。要將消息發送到經過網絡鏈接到您的系統的另外一個系統上的用戶,您必須知道那我的的登陸標識和另外一個系統的名稱。