2011-11-24 42 views
121

我知道有辦法在Linux/MacOS上從終端發送電子郵件,但我似乎無法找到有關如何執行此操作的適當文檔。如何從終端發送郵件?

基本上我需要它爲我的bash腳本,每當文件發生變化時通知我。

+2

它可能應該指出的是某些主機和ISP「關閉」爲您發送電子郵件的功能的文件。我認爲這是一個試圖阻止人們通過他們發送垃圾郵件和進行網絡釣魚 –

+0

@JimJeffries哪些?我正在使用Amazon EC2 Web服務器。 – ckjbgames

回答

110
echo "this is the body" | mail -s "this is the subject" "[email protected]" 
+14

請注意,所有這些解決方案都假定您擁有本地安裝的MTA – Miquel

+8

@Miquel優點。在Ubuntu中,您可以通過'sudo apt-get install mailutils'來獲得必備條件。 – earldouglas

+3

@詹姆斯,這是不工作我的MAC(((你能幫我嗎? – neo

34

如果你需要的是一個主題行(如警報消息)簡單地做:

mailx -s "This is all she wrote" < /dev/null "[email protected]" 
+0

我最喜歡的地方 –

+0

@medTechy我很高興你覺得它很有用 – JRFerguson

+0

非常有用...非常感謝!! – Shambho

7

在終端上您的Mac OS或Linux操作系統類型的代碼

mail -s (subject) (receiversEmailAddress) <<< "how are you?" 

爲例嘗試此

mail -s "hi" [email protected] <<< "how are you?"<br> 
13

如果要附加在Linux上

echo 'mail content' | mailx -s 'email subject' -a attachment.txt [email protected] 
+3

它爲我的附件提供了一個'invalid header'消息,正確的選項是一個大寫的'-A'。 – Stephane

+0

@Stephane根據patrick-haugh的說法,-a是附件開關。 -A用於帳戶命令。請參閱手冊頁:https://linux.die.net/man/1/mailx – MiaeKim