Linux 下使用mail mailx命令傳送郵件

2021-10-07 16:50:58 字數 1692 閱讀 3837

linux os: redhat 7

1.安裝mailx:

yum install mailx
2.配置/etc/mail.rc:

vi /etc/mail.rc 

# 省略預設設定......

##末尾加入以下引數

set [email protected] ## 傳送郵件後顯示的郵件傳送方

set smtp=smtp.qq.com ## smtp郵件伺服器位址

set smtp-auth-user=123456 ## 發件人郵箱

set smtp-auth-password=***xx ## (郵箱賬號的客戶端授權碼,需要登陸自己的郵箱進行設定,不是郵箱密碼)

set smtp-auth=login

set ssl-verify=ignore

set nss-config-dir=/etc/pki/nssdb

3.測試傳送:

# 第一種 mail

##把列印的內容作為標準輸入,送給mail命令

[root@test root]# echo "郵件正文" | mail -s "郵件標題" [email protected]

##-s表示主題,"< mail.txt"表示把mail.txt裡的內容作為郵件正文

[root@test root]# mail -s "郵件標題g" [email protected] < mail.txt

##也可以用cat mail.txt的輸出作為mail命令的標準輸入,作為郵件正文

[root@test root]#cat mail.txt | mail -s "郵件標題" [email protected]

##-c表示抄送的位址([email protected],[email protected]),[email protected]是直接傳送的位址

[root@test root]# echo "郵件正文" | mail -s "郵件標題" -c "[email protected],[email protected]" "[email protected]"

[root@test root]# mail -s "郵件標題" -c "[email protected],[email protected]" "[email protected]" < mail.txt

##測試發現,用uuencode發地附件,在郵箱裡是不能正常顯示的,是一些「亂碼」,需要額外的解碼命令,總之不太好用

[[root@test root]# uuencode /home/tough/pic/a.png "tough's photo" | mail -s "pic test" [email protected]

##在網上看到的偽造發件人位址方法(-- -f後跟發發件人位址,-f發件人名稱),測試之後效果也不太理想

[root@test root]# mail -s tough [email protected] < mail.txt -- -f [email protected] -f 666

# 第二種 mailx

echo test | mailx -v -s "test" [email protected] < test.txt

## -v可以動態顯示郵件傳送狀態。可以把test.txt檔案的內容作為郵件內容傳送

# 其它命令

##檢視發郵件的佇列

mailq

linux下串列埠使用

串列埠終端程式設計順序 開啟 設定 讀寫 關閉。涉及到的api。1 獲取終端屬性tcgetattr 原型 int tcgetattr int fd,struct termios termios p 功能 取得終端介質 fd 初始值,並把其值賦給temios p 函式可以從後台程序中呼叫 但是,終端屬...

linux 下vi 的使用

進入vi的命令 vi filename 開啟或新建檔案,並將游標置於第一行首 vi n filename 開啟檔案,並將游標置於第n行首 vi filename 開啟檔案,並將游標置於最後一行首 vi pattern filename 開啟檔案,並將游標置於第乙個與pattern匹配的串處 vi r...

Linux下使用Ntfs分割槽

在使用windows作業系統時,ntfs做為最常用的分割槽格式存在,但是因為這個格式在linux下預設不能直接使用,所以linux使用者不能充分利用ntfs格式的硬碟空間,因為linux沒有將掛載ntfs格式這項功能編譯到核心裡面,所以使用者必須重新編譯核心 但是編譯過程比較複雜又很難保證一定能夠掛...