web-dev-qa-db-ja.com

UNIXのmailxコマンドを使って電子メールを送信するにはどうすればよいですか?

UNIXのmailxコマンドを使って電子メールを送信するにはどうすればよいですか?

85
user269484

$ echo "something" | mailx -s "subject" [email protected]

添付ファイルを送信する

$ uuencode file file | mailx -s "subject" [email protected]

添付ファイルを送信し、メッセージ本文を書き込む

$ (echo "something\n" ; uuencode file file) | mailx -s "subject" [email protected]
100
ghostdog74

はい、どうぞ :

echo "Body" | mailx -r "FROM_EMAIL" -s "SUBJECT" "To_EMAIL"

PS。本文と件名は二重引用符で囲みます。電子メールアドレスを置き換えるときにFROM_EMAILTo_EMAILから引用符を削除します。

27
Kamran Ahmad
mailx -s "subjec_of_mail" [email protected] < file_name

mailxユーティリティを通して、unixからmail serverにファイルを送ることができます。上のコードでは、最初のパラメータが-s "subject of mail"で、2番目のパラメータがmail IDで、最後のパラメータが添付したいファイルの名前です。

MUTTコマンドでより速く

echo "Body Of the Email"  | mutt -a "File_Attachment.csv" -s "Daily Report for $(date)"  -c [email protected] [email protected] -y
  1. -c email cc list
  2. -sサブジェクトリスト
  3. -yメールを送る
5
user1651561

Manページから:

メール送信

1人以上の人々にメッセージを送るために、mailxはメールが送られる人々の名前である引数で呼び出されることができます。その後、ユーザーは自分のメッセージを入力し、続いて行の先頭に「control-D」を入力するようになっています。

つまり、mailxは送信するコンテンツを標準入力から読み取り、通常どおりにリダイレクトできます。例えば。:

ls -l $HOME | mailx -s "The content of my home directory" [email protected]
4
hlovdal
mail [-s subject] [-c ccaddress] [-b bccaddress] toaddress

-cと-bはオプションです。

-s:件名を指定し、件名にスペースが含まれる場合は引用符を使用します。

-c:コンマで区切られたユーザーのリストにカーボンコピーを送信します。

-b:コンマで区切られたユーザーのリストにブラインドカーボンコピーを送信します。

私の答えがあなたの疑問を明確にすることを願っています。

4
Pavan Kumar
echo "Sending emails ..."
NOW=$(date +"%F %H:%M")
echo $NOW  " Running service" >> open_files.log
header=`echo "Service Restarting: " $NOW`


mail -s "$header" [email protected],   \
              [email protected], \ < open_files.log
3
Piyush Mattoo

住所からのカスタマイズ

MESSAGE="SOME MESSAGE"
SUBJECT="SOME SUBJECT"
TOADDR="[email protected]"
FROM="DONOTREPLY"

echo $MESSAGE | mail  -s "$SUBJECT" $TOADDR  -- -f $FROM
1
Hari

2人以上またはDLを送信する場合

echo "Message Body" | mailx -s "Message Title" -r [email protected] [email protected],[email protected]

ここに:

  • -s =件名またはメールのタイトル
  • -r =送信者メールまたはDL
0
dildeepak

これはいくつかの添付ファイルでメール送信に取り組むための多機能関数です。

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}
}

関数呼び出し:enviaremail "smtp.mailserver:port" "from_address" "authuser" "'pass'" "destination" "スペースで区切られた添付ファイルのリスト"

注:呼び出し内の二重引用符を削除してください

さらに、関数を使用する前に、Eメールの$ titulo(件名)と$ cuerpo(本文)を外部で定義することを忘れないでください

0
Ivo Yordanov