Gmail을 사용하여 명령줄에서 이미지 첨부 파일이 포함된 메일을 보내는 가장 쉬운 방법은 무엇입니까?

Gmail을 사용하여 명령줄에서 이미지 첨부 파일이 포함된 메일을 보내는 가장 쉬운 방법은 무엇입니까?

이전 기사를 바탕으로 다음과 같이 단일 명령줄을 통해 상태 메시지를 보내도록 cron 작업을 요청합니다.

Gmail을 사용하여 명령줄을 통해 한 줄 이메일을 보내는 가장 쉬운 방법은 무엇입니까?

문제는 한줄로 첨부파일을 보내는 방법입니다.

상상하다:

cron 작업은 다음과 같이 출력 파일을 생성합니다.

cd /home/pi/python
gnuplot plt12

프로그램 파일 plt12에는 다음 두 줄이 포함되어 있습니다.

set output "pl12.png"
set terminal png font "arial,11"

이는 데이터 로깅을 위해 USB를 통해 Nano의 ADC에 연결된 Rpi3B 시스템에서 수행되었습니다.

그렇다면 질문은 단일 명령줄을 사용하여 Gmail을 통해 도면 파일 이미지를 보내는 가장 쉬운 방법은 무엇입니까?

답변1

그리고 mutt:

SMTP_URL='smtps://user:[email protected]' mutt \
  -F /dev/null \
  -e 'set from="Me <[email protected]>"' \
  -e 'set smtp_url=$SMTP_URL' \
  -s 'pl12.png file' \
  -a pl12.png --  \
  [email protected] << EOM
Hi,

see pl12.png attached.

-- 
Me
EOM

모든 쉘 코드와 마찬가지로 원하면 언제든지 한 줄에 넣을 수 있지만 그렇게 하면 가독성에 도움이 되지 않습니다.

printf 'Hi,\n\nsee pl12.png attached\n\n-- \nMe\n' | SMTP_URL='smtps://user:[email protected]' mutt -F /dev/null -e 'set from="Me <[email protected]>"' -e 'set smtp_url=$SMTP_URL' -s 'pl12.png file' -a pl12.png  -- [email protected]

답변2

OP에서 참조된 이전 질문에 따르면 단일 명령줄을 사용하여 메시지를 보내는 가장 간단한 방법은 다음과 같습니다.

Gmail을 사용하여 명령줄을 통해 한 줄 이메일을 보내는 가장 쉬운 방법은 무엇입니까?


발췌:

ssmtp다음 명령을 사용하여 설치하십시오.

sudo apt-get update
sudo apt-get install ssmtp

그런 다음 /etc/ssmtp로 이동하여 다음과 같이 ssmtp.conf를 편집합니다.

root=rpi3abc@gmail
mailhub=smtp.gmail.com:465
FromLineOverride=YES
[email protected]
AuthPass=testing123
UseTLS=YES

다음과 같은 줄을 보냅니다.

echo "Testing...1...2...3" | ssmtp [email protected]

해당 부분이 완료되면 한 줄로 첨부 파일을 보내는 것도 쉽습니다.

먼저 다음을 설치하십시오 mpack.

sudo apt-get update
sudo apt-get install mpack

그런 다음 pl12.png 파일을 사용자에게 보내는 시나리오를 따르십시오.[이메일 보호됨], 이는 단일 명령줄을 통해 수행됩니다.

mpack -s "12-Volt Battery Pack plot" /home/pi/python/pl12.png [email protected]

파일이 현재 디렉터리에 있으면 정규화된 경로를 사용할 필요가 없습니다.

cron작업은 항상 사용자의 홈 디렉터리에서 실행되므로 항상 첨부 파일에 대한 전체 디렉터리 경로를 사용하는 것이 좋습니다.


관련 정보