以下命令通过电子邮件向我自己发送一个文件:
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"; }