mailx
UNIXコマンドを使用して電子メールを送信するにはどうすればよいですか?
10 に答える
例
$ echo "something" | mailx -s "subject" recipient@somewhere.com
添付ファイルを送信する
$ uuencode file file | mailx -s "subject" recipient@somewhere.com
添付ファイルを送信し、メッセージ本文を書く
$ (echo "something\n" ; uuencode file file) | mailx -s "subject" recipient@somewhere.com
はい、どうぞ :
echo "Body" | mailx -r "FROM_EMAIL" -s "SUBJECT" "To_EMAIL"
PS。本文と件名は二重引用符で囲んでください。電子メールアドレスを置き換えている間FROM_EMAIL
、引用符を削除します。To_EMAIL
mailx -s "subjec_of_mail" abc@domail.com < file_name
ユーティリティを使用して、 からにmailx
ファイルを送信できます。ここで上記のコードでは、最初のパラメーターが
2番目のパラメーターであり、最後のパラメーターが添付するファイルの名前であることがわかりますunix
mail server
-s "subject of mail"
mail ID
MUTT コマンドで高速化
echo "Body Of the Email" | mutt -a "File_Attachment.csv" -s "Daily Report for $(date)" -c cc_mail@g.com to_mail@g.com -y
- -c 電子メール cc リスト
- -s 件名リスト
- -y メールを送信する
マニュアルページから:
メールの送信
メッセージを 1 人または複数の人に送信するには、メールの送信先の名前を引数として mailx を呼び出すことができます。次に、ユーザーは自分のメッセージを入力し、続いて行の先頭に「control-D」を入力する必要があります。
つまり、mailx は送信するコンテンツを標準入力から読み取り、通常のようにリダイレクトできます。例えば:
ls -l $HOME | mailx -s "The content of my home directory" someone@email.adr
echo "Sending emails ..."
NOW=$(date +"%F %H:%M")
echo $NOW " Running service" >> open_files.log
header=`echo "Service Restarting: " $NOW`
mail -s "$header" abc.xyz@google.com, \
cde.mno@yahoo.com, \ < open_files.log
FROM アドレスのカスタマイズ
MESSAGE="SOME MESSAGE"
SUBJECT="SOME SUBJECT"
TOADDR="u@u.com"
FROM="DONOTREPLY"
echo $MESSAGE | mail -s "$SUBJECT" $TOADDR -- -f $FROM
これは、複数の添付ファイルを含むメール送信に取り組むための多機能関数です。
enviaremail() {
values=$(echo "$@" | tr -d '\n')
listargs=()
listargs+=($values)
heirloom-mailx $( attachment=""
for (( a = 5; a < ${#listargs[@]}; a++ )); do
attachment=$(echo "-a ${listargs[a]} ")
echo "${attachment}"
done) -v -s "${titulo}" \
-S smtp-use-starttls \
-S ssl-verify=ignore \
-S smtp-auth=login \
-S smtp=smtp://$1 \
-S from="${2}" \
-S smtp-auth-user=$3 \
-S smtp-auth-password=$4 \
-S ssl-verify=ignore \
$5 < ${cuerpo}
}
関数呼び出し: Environmentemail "smtp.mailserver:port" "from_address" "authuser" "'pass'" "destination" "スペースで区切られた添付ファイルのリスト"
注: 呼び出しで二重引用符を削除します
さらに、関数を使用する前に、電子メールの $titulo (件名) と $cuerpo (本文) を外部で定義することを忘れないでください。
2人以上またはDLしたい場合:
echo "Message Body" | mailx -s "Message Title" -r sender@someone.com receiver1@someone.com,receiver_dl@.com
ここ:
- -s = 件名またはメールタイトル
- -r = 送信者のメールまたは DL