
以下命令透過電子郵件向我自己發送一個文件:
sudo mail -a FILE_ADDRESS -s "Subject of E-mail" [email protected]
問題:如何將這個命令變成單行命令,這樣我就可以輸入類似的內容
email_myself FILE_ADDRESS
一個相關的問題如下:有沒有辦法讓我只需右鍵單擊一個文件,然後就可以對其執行這個命令?或做一些類似的事情,例如透過電子郵件將剪貼簿的內容發送給我自己(這樣,如果它是文件,它會透過電子郵件將文件發送給我,或者如果它是文本,它會透過電子郵件發送文字)? (注意我使用的是 Ubuntu)。我認為這將是一個非常有用的腳本:)
答案1
做一個函數:
email_myself() { sudo mail -a "$1" -s "Subject of E-mail" [email protected]; }
如果您希望您的函數永久保留,並假設這bash
是您的 shell,請將定義作為一行添加到您的~/.bashrc
.
對於那些喜歡 shell 腳本而不是函數的人,創建一個名為 的文件email_myself
,使其可執行 ( chmod +x email_myself
),並將其保存在您的某個位置PATH
:
#!/bin/sh
sudo mail -a "$1" -s "Subject of E-mail" [email protected]
其他mail
節目
在我的系統上,該mail
命令不是這樣工作的。其一,sudo
是不必要的。另一方面,-a
不附加文件;它用於指定附加標頭。因此,我會使用:
email_myself() { mail -s "Subject of E-mail" [email protected] <"$1"; }