我正在编写一个脚本,它将查看自定义报告目录,将其复制到工作文件夹,以及它将查看的数据文件,运行报告,压缩新创建的文件,并将它们上传到另一个服务器。
我遇到的问题是我根本不知道新创建的文件是什么(也不是文件扩展名)。我想知道是否有一种压缩或找出新创建的文件的方式(与报告运行之前和之后相比)。
我会查看时间戳,然后将最新文件移动到某处以压缩它们,但是正在运行的报告可能会在不同时间创建多个文件(例如首先是电话报告文件,然后是数据报告)文件)。
关于如何实现这一目标的任何想法?
答案 0 :(得分:2)
与Tynan相似的想法:
touch report_start
./run_report
find $working_dir -type f -newer report_start | tar czf $archive
rm report_start
答案 1 :(得分:1)
您应该可以执行以下操作:
touch report_start
./run_report
for i in `ls -Rt`; do
echo $i | grep report_start
if [ $? -eq 0 ]; then
break
fi
cp $i reports
done
rm reports/report_start
tar xvzf reports.tar.gz reports
rm report_start
循环遍历目录中的每个文件,看它们是否比运行报表之前创建的文件更新,然后对结果进行压缩。