mailx
(mailx(GNU Mailutils)3.4)を使用して複数の人にメールを送信しようとしました。私は以前のバージョンのUbuntu、v16.04でそれを成功させ、スクリプトは正常に動作していました。今私はUbuntu 18.04と次の問題を抱えています:
mailx: unrecognized option -S
mailx: unrecognized option -S
mailx: unrecognized option -S
私は何をすべきか?
私のスクリプトは次のとおりです:
#!/bin/bash
FILE="speakers.csv"
while IFS=";" read name mailAdress
do
printf "Dear $name, \n\n something something... " | mailx -s "Title" -S smtp=smtps://mySMPTadress -S smtp-auth=login -S smtp-auth-user="MyUserName" -S smtp-auth-password='MyPassword' -S from="MyName <MyEmailAdress>" mailAdress
done < "$FILE"
ファイルspeakers.csvはこのようになります
Klaus A;klaus@*****.de
Alessandra B;alessandra@****.it
Serge C;serge@****.fr
迅速で汚い:
mailx
はs-nail
へのリンクであるため、代わりにs-nail
を使用する必要があります Bionic man page によると、これには-S
オプションがまだあります。
適切に実行してください:
ps
にアクセスできるすべてのユーザーがコマンドラインでパスワードを読み取ることができるため、このようなメールの送信は避けてください。-A
(アカウント)オプションを使用して、これを.netrc
ファイルに保存し、ユーザーとルートがアクセスできます。 (完全な man page をお読みください)
DebianとUbuntuは、Heirloom mailx
をs-nail mailx
に置き換えました。どちらもそのオプションをサポートしています。しかし、他のパッケージにはない他のいくつかのmailx
コマンドがあります。これにはGNU Mailutils mailx
が含まれているため、知らないうちに切り替えたようです。
一方で、Fabbyが言ったように、コマンド引数(または環境変数)でユーザー資格情報を渡さないでください。
mailx
。 Ubuntu 16.04マニュアルページ。mailx
。 Ubuntu 16.04マニュアルページ。mailx
。 Ubuntu 16.04マニュアルページ。mailx
。 Ubuntu 14.04マニュアルページ。s-nail
。ユーザーコマンド。 s-ネイル。 Debianマニュアルページ。mailx
。ユーザーコマンド。 GNU mail utils。Debianマニュアルページ。mailx
。一般コマンドマニュアル。 BSD mailx。 Debianマニュアルページ。mailx
。ユーザーコマンド。 NMH。 Debianマニュアルページ。