繁体   English   中英

用于打包多个tar文件的Shell脚本(取决于日期)

[英]Shell script to pack multiple tar files (depending on the day)

我有一些tar文件(总是每天增加),例如:

1.tar
2.tar
3.tar
4.tar
…

我想等到它到达7.tar14.tar28.tar并继续执行,因此,如果可能,在shell脚本中,我们可以安排tar来执行自动将文件打包到单个单元(tar)中(例如:每7天有焦油包装吗?

last=`ls [0-9]*.tar | sed s/.tar//g | sort -g | tail -1`
if(($last%7==0))
then
     tar tar -cf `date '+%b%d'`.tar [1-9]*.tar
fi

将其添加到登录脚本中,并会在创建7.tar,14.tar等之后自动打包下次登录时的所有内容。

它能做什么?

last=`ls [0-9]*.tar | sed s/.tar//g | sort -g | tail -1`

列出文件,删除结尾的.tar,排序并获取最后一个文件名,该文件名将是最近创建的文件。 如果该文件名是7的倍数,则将整个文件打包到一个名为monthdate的tar文件中,即今天它由Sept24.tar打包。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM