如果您成為Linux服務器高級用戶,關鍵是多用命令行,少用Gui;多用鍵盤,少用鼠標! 隨著Linux命令行工具越來越多,不僅是管理性的,還有一些非管理性的,其實至關重要的日常工作,都是使用命令行來完成的。
在本文中,我們將學習如何在Linux服務器中使用mail命令發送一封帶有文件附件的電子郵件。
前提條件
已經在你的Linux服務器上用SMTP配置了你的電子郵件。這個郵件和服務器將被我們今天要學習的 “郵件 “程序所使用。
mail “這個程序可以用來從命令行發送電子郵件,以及電子郵件的附件。這個程序在默認情況下是不可用的,可以在 Debian 和 Red Hat 發行版中使用以下方法安裝。
$ sudo apt install mailutils [在Debian/Ubuntu/Mint系統服務器上]
$ sudo dnf install mailx [在RedHat/centos/Fedora系統服務器上] 。
使用’mail’發送郵件的語法如下。
$ echo “Email Message Body” | mail -s “Subject of the Email” target@domain.com
你可以看到,我們使用echo命令來輸出消息正文,并將此輸出重定向到’mail’命令。這是因為’mail’命令從標準輸入中讀取郵件正文的輸入。
從命令行發送帶有文件附件的電子郵件。
同樣的,要在郵件中附加一個文件,可以使用參數’-A’。
$ echo “Email Message Body” | mail -s “Subject of the Email” target@domain.com -A
從命令行發送電子郵件給多個收件人。
要發送郵件給多個收件人,只需指定多個郵件ID,并用逗號分隔。
$ echo “Email Message Body” | mail -s “Subject of the Email” target1@domain.com;target2@domain.com,target3@domain.com -A
要在郵件中包含一個文本文件,而不是使用echo,你可以將文件的文本重定向到如下所示的命令。
$ mail -s “Subject of the Email” target@domain.com -A
我們看到了一種從Linux服務器中的命令行發送電子郵件和附件的方法。還有一些其他的程序,如’mutt’和’Sendmail’,它們與’mail’類似,可以用于同樣的目的。