我想使用下面的代码发送多个 CSV 文件。在结果文件夹中,我们有多个 CSV 文件。但是,我只想捕获摘要 CSV 文件。我尝试使用 *, % 进行不同的组合。然而,却无法这么做。
从下面的代码中,我只能发送一个文件(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"
中的第二个替换uuencode
为$(basename "$f")