私はpostgresでクエリを実行するbashスクリプトを持っており、csvに出力します。そのスクリプトにmailxを使用して、その.csvファイルを特定の電子メールに電子メールで送信することを追加したいと思います。bashスクリプトmailxをメール添付に使用
問題は、ファイルを電子メールで送信しないことです。私はmailxが正しく設定されていることを知っているのでメールを受け取ることができます。私は添付ファイルとして電子メールで受け取ることができません。また、電子メールの本文に出力を電子メールで送信することもできます。
ここにコードがあります。
#!/bin/bash
NOWDATE=`date +%m-%d-%Y`
PGPASSWORD=password psql -w -h host -p 5432 -d database -U user -o /tmp/folder/file-$NOWDATE.csv <<EOF
Query is here
# remove the first 2 lines of the report as they are headers
sed -i '2d' /tmp/folder/file-$NOWDATE.csv
uuencode /tmp/folder/file-$NOWDATE.csv | mailx -s "Accounts No Credit Card Report for '$NOWDATE'" [email protected]
私はmailxの部分を試してみました。だから私は得る問題は、私は.SHファイルを実行すると、それは、このエラーを吐くある
uuencode /tmp/folder/file-$NOWDATE.csv /tmp/folder/file-$NOWDATE.csv | mailx -s "Accounts No Credit Card Report for '$NOWDATE'" [email protected]
と
uuencode /tmp/folder/file-$NOWDATE.csv file-$NOWDATE.csv | mailx -s "Accounts No Credit Card Report for '$NOWDATE'" [email protected]
。
uuencode: fopen-ing /tmp/folder/file-01-11-2011.csv: Unknown system error
パス '/ tmp/folder/file- $ NOWDATE.csv'は正しいですか?あなたがファイルを持っているところで 'pwd'を実行し、ダブルチェックします。このエラーは、 '/ path/to/file'が存在しない場合に発生します。 –
また、 'sed -i '2d' filename'は2行目と**最初の2行を削除します。最初の2行を削除するには 'sed -i 'を実行する必要があります。1,2d' filename' –
Jaypal。私はコメントが間違っていたことに同意しました。私は2行目を削除する必要があることがわかりました。最初に1行目と2行目を削除しました。 LOL ...さて、私はそれをチェックします。 – DoCnTex