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"
스피커.csv 파일은 다음과 같습니다.
Klaus A;klaus@*****.de
Alessandra B;alessandra@****.it
Serge C;serge@****.fr
답변1
Debian과 Ubuntu는 mailx
Heirloom을 s-nail로 대체했습니다 mailx
. 둘 다 이 옵션을 지원합니다. 그러나 mailx
다른 패키지에는 mailx
GNU Mailutils를 포함하여 이를 알지 못한 채 전환한 것으로 보이는 몇 가지 다른 명령이 있습니다 .
Fabby가 말했듯이 가장 중요한 것은 명령 매개변수(또는 환경 변수)에 사용자 자격 증명을 전달하지 않는 것입니다.
추가 읽기
답변2
빠르고 더러운:
mailx
링크이므로 그에 맞게 사용해야 s-nail
합니다 .s-nail
바이오닉 매뉴얼 페이지여전히 -S
옵션이 있습니다.
올바르게 수행하십시오.
액세스 권한이 있는 사람은 누구나 ps
명령줄에서 귀하의 비밀번호를 읽을 수 있으므로 이와 같은 이메일을 보내는 것을 피해야 하며, -A
(계정) 옵션을 사용하여 .netrc
사용자와 루트만 액세스할 수 있는 파일에 비밀번호를 저장하는 것을 고려해야 합니다. (전체 기사 읽기매뉴얼 페이지)