以下のコードを使用して複数のCSVファイルを送信したいと思います。結果フォルダには複数のCSVファイルがあります。しかし、要約CSVファイルだけをキャプチャしたいと思います。 *、%を使用してさまざまな組み合わせを試しました。しかし、そうすることは不可能でした。
以下のコードでは、1つのファイル(SDN_WCFINCEN_summary_20151013_111216.csv)のみを送信できます。
(cat /aceapp/QATD011R4/ace.ofac/testofac/results/SDN_WCFINCEN_summary_20151013_111216.csv;
uuencode /aceapp/QATD011R4/ace.ofac/testofac/results/SDN_WCFINCEN_summary_20151013_111216.csv SDN_WCFINCEN_summary_20151013_111216.csv) | mail -s "Summary Report" [email protected]
答え1
Archemarが言ったように、ループが必要です。たとえば、
(しかし、スペースで区切ってFILES変数に必要な数のファイルを追加します。)
FILES="/aceapp/QATD011R4/ace.ofac/testofac/results/SDN_WCFINCEN_summary_20151013_111216.csv"
(for f in $FILES ; do uuencode "$f" "$f" ; done ) | mail -s "Summary Report" [email protected]
uuencodeに出力されたファイル名からパスを削除するには、コマンド"$f"
の2番目のパスを次uuencode
のように置き換えます。$(basename "$f")