shell小技巧(七十九)答复网友脚本错误一例

论坛 期权论坛 脚本     
匿名技术用户   2020-12-29 23:09   38   0

如图是网友发的QQ截图。问题是,运行脚本目的是打包/var/log下所有的后缀log的文件,成功后删除源文件。

实际运行结果是,得到的压缩包都是错误的。

分析:

从脚本看,其过程是通过find获得全部/var/log下后缀log的文件名,以备份目录名、字符串、时间组合备份那文件目标,使用for in读取已经找到的目标文件数组进行打包,使用tar --remove-files实现删除源文件

貌似没有什么问题,但是...结果不对那么一定有问题。

问题在哪里呢?

第一个问题,循环执行打包,那么每次循环都创建打包文件,是不是就覆盖前面的?

那么解决方案就是第一个文件归档要进行创建,第二个之后应该是追加。

修改后 tar rvPfz ...

修改后出现新问题,提示追加模式无法压缩

可以采用先打包后压缩的方式。即先tar rvfP ...,完成后再使用gzip压缩(其他压缩软件也可以)

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP