【发布时间】:2020-12-09 21:25:03
【问题描述】:
Logrotate 已将已存在的压缩文件压缩 n 次并错误重命名。
一个错误命名文件的例子如下:
v_virtual.log.5.gz.1.gz.1.gz.2.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz
我的意图是搜索每个文件(它们不一定称为 v_virtual),但我想要修改名称,在此示例中保留主名称 v_virtual,日期和扩展名为 .gz
应该是这样的:
v_virtual.log_2020-08-20.gz
日期将是所述文件的创建日期。
我一直在通过使用 awk、paste 和其他方法来分隔每个文件、按文件名、但我想用一个可以让它更快的脚本来做到这一点。
你能帮帮我吗?
【问题讨论】:
-
您可以使用
sed或parameter expansion 或rename命令(如果它基于perl)搜索.gz和之后的所有内容并将其替换为.gz -
我不知道 gzip 没有针对双重压缩的检查