.txt 파일에 파일 이름이 3개 있습니다.
파일 이름을 모두 읽어서 메일 첨부 파일로 보내야 합니다.
예:
test.txt - (파일 이름)
-query1.dat
-query2.dat
-query3.dat
test.txt 파일을 읽고 모든 query*.dat 파일을 가져와서 mailx 명령을 사용하여 이 모든 파일을 첨부 파일로 메일을 보내야 합니다.
나는 이 코드를 가지고 있습니다 :
while read line
do
mailx -a ${line} -s "files" ${mail_from} << EOM
Hi, Sent files
EOM
done<test.txt
별도의 이메일을 통해 각 파일을 개별적으로 보냅니다.
이 모든 파일을 하나의 이메일로 보내야 합니다.
어떻게 하나요?
답변1
-a file
동일한 호출에 여러 개를 추가 할 수 있습니다 mailx
.
while read pj ; do
attach+=( -a "$pj" )
done < test.txt
mailx "${attach[@]}" -s "files" ${mail_from} << EOM
Hi, Sent files
EOM
attach+=( -a "$pj")
배열에 요소 2개 추가"${attach[@]}"
값에서 공백으로 구분되지 않고 배열의 각 요소를 별도의 값으로 확장합니다.