Echo
回顯文件與 mailutils 衝突
安裝 ssmtp 和mailutils後,使用“echo”寫入文件會嘗試向我發送電子郵件至 username@hostname。例如:
使用 mailutils 發送郵件:
echo "Body text here." | mail -s "Subject text here." sendto@email.com
我使用:
echo "log content" > logfile.txt
將內容寫入日誌文件。問題是,當我想寫入日誌文件時,我收到一封來自 Gmail 的可傳遞電子郵件,說 username@hostname 無法訪問,這意味著它會干擾 mailutils。
我這是 mailutils 的一個已知問題,需要解決方法或修復,我該如何解決?
你在做這樣的事情嗎?
echo "log content" > logfile.txt | mail -s "Subject text" sendto@email.com
如果是這樣,難怪它不起作用 - 你已經將
echo
’s 的輸出重定向到一個文件,如果tee
.
tee
的全部目的是(來自手冊頁):tee - 從標準輸入讀取並寫入標準輸出和文件
注意:如果您想追加
logfile.txt
而不是完全覆蓋它,請使用tee -a logfile.txt
. 見man tee
。因此,要保存到日誌文件並通過管道傳輸到郵件中,請嘗試以下操作:
echo "log content" | tee logfile.txt | mail -s "Subject text" sendto@email.com
或者,您可以重定向到日誌文件,然後使用
<
to redirectecho "log content" > logfile.txt mail -s "Subject text" sendto@email.com < logfile.txt