98

mailxUNIXコマンドを使用して電子メールを送信するにはどうすればよいですか?

4

10 に答える 10

113

$ 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
于 2010-02-17T16:48:18.847 に答える
34

はい、どうぞ :

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

PS。本文と件名は二重引用符で囲んでください。電子メールアドレスを置き換えている間FROM_EMAIL、引用符を削除します。To_EMAIL

于 2012-12-31T05:48:44.080 に答える
6
mailx -s "subjec_of_mail" abc@domail.com < file_name

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

于 2016-06-01T10:56:55.157 に答える
5

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
  1. -c 電子メール cc リスト
  2. -s 件名リスト
  3. -y メールを送信する
于 2013-01-08T11:34:35.463 に答える
4

マニュアルページから:

メールの送信

メッセージを 1 人または複数の人に送信するには、メールの送信先の名前を引数として mailx を呼び出すことができます。次に、ユーザーは自分のメッセージを入力し、続いて行の先頭に「control-D」を入力する必要があります。

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

ls -l $HOME | mailx -s "The content of my home directory" someone@email.adr
于 2010-02-17T16:46:39.773 に答える
3
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
于 2014-12-05T18:32:08.337 に答える
1

FROM アドレスのカスタマイズ

MESSAGE="SOME MESSAGE"
SUBJECT="SOME SUBJECT"
TOADDR="u@u.com"
FROM="DONOTREPLY"

echo $MESSAGE | mail  -s "$SUBJECT" $TOADDR  -- -f $FROM
于 2016-12-15T16:49:49.217 に答える
1

これは、複数の添付ファイルを含むメール送信に取り組むための多機能関数です。

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 (本文) を外部で定義することを忘れないでください。

于 2018-11-28T21:39:35.070 に答える
0

2人以上またはDLしたい場合:

echo "Message Body" | mailx -s "Message Title" -r sender@someone.com receiver1@someone.com,receiver_dl@.com

ここ:

  • -s = 件名またはメールタイトル
  • -r = 送信者のメールまたは DL
于 2018-10-26T18:29:39.763 に答える