ファイルを自分に電子メールで送信するスクリプト

ファイルを自分に電子メールで送信するスクリプト

次のコマンドは、ファイルを自分自身に電子メールで送信します。

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シェルであると仮定)、定義を 1 行として に追加します~/.bashrc

関数よりもシェル スクリプトを好む場合は、 という名前のファイルを作成し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"; }

関連情報