리눅스 명령행에서 메일 보내기(send mail from linux command line)
command line 에서 mail 보내기. 쉘 스크립트 등에서 유용
sendmail 사용
$ echo -e "Subject: Terminal Email Send\n\nEmail Content line 1\nEmail Content line 2" > content $ sendmail user@example.com < content
mail 사용
$ mail -s "메일 테스트" user@example.com
명령어 실행후 콘솔에 이메일 내용을 입력하고 Ctrl-D 를 누르면 메일이 전송됨
Email 테스트입니다. <Ctrl+D>
콘솔에서 본문을 바로 입력하려면 heredoc 문법(<<<) 으로 본문을 입력
$ mail -s "메일 테스트" user@example.com <<< '메일 본문입니다'
본문없이 제목만 전송
$ mail -s "Test Subject" user@example.com < /dev/null
파일 첨부는 -a 옵션뒤에 첨부할 파일의 경로를 입력
본문없이 제목만 전송
$ mail -s "메일 테스트" -a test.pdf user@example.com <<< '메일 본문입니다'
Mutt 사용
설치
mutt 패키지 설치
yum install mutt
ubuntu
sudo apt install mutt
주요 옵션
옵션 | 용도 | 비고 |
---|---|---|
-a <file> | 첨부 파일 | -a attach.jpg |
-b <address> | blind carbon-copy (BCC) address | |
-c <address> | specify a carbon-copy (CC) address | |
-s <제목> | 제목(반드시 쌍따옴표로 둘러 싸야함) | -s "제목입니다" |
사용
메일 전송
mutt -s "Test from mutt" user@example.com
여러 명에게 보낼 경우 메일 주소를 추가로 입력
mutt -s "Test from mutt" user@example.com user2@host.com
본문을 외부에서 입력
메일 본문은 미리 작성한 message.txt 를 사용
mutt -s "Test from mutt" user@example.com < message.txt
첨부 파일 포함 전송
mutt -s "Test from mutt" user@example.com < message.txt -a attachment.tar
본문 내용을 커맨드에서 작성
echo "메일 본문입니다" | mutt -s "Test from mutt" user@example.com -a attachment.tar
메일 참조 추가
-c 옵션으로 carbon copy 할 사용자를 설정
echo "메일 본문입니다" | mutt -s "Test from mutt" user@example.com -a attachment.tar -c user2@example.com -c admin@example.com
숨은 참조(BCC: blind corbon copy) 가 필요할 경우 -b 옵션 사용
echo "메일 본문입니다" | mutt -s "Test from mutt" user@example.com -a attachment.tar -c user2@example.com -b admin@example.com -b user@host.com
모든 메일 삭제
- 대문자 D 를 눌러서 삭제 메뉴 표시
- 하단 왼쪽의 "Delete messages matching" 입력창에서 ~A 입력
- q 를 누르고 "Purge message?" 에서 yes 입력
같이 보기
Ref
- https://tecadmin.net/ways-to-send-email-from-linux-command-line/
- http://www.garron.me/en/go2linux/send-mail-gmail-mutt.html