【发布时间】:2014-05-16 21:30:26
【问题描述】:
我正忙于编写一个 bash 脚本,该脚本可以根据文件名中的日期删除文件,例如 xxxxxxxxx140516.log。它应该在 2014 年 5 月 16 日之后的第二天删除文件。我希望脚本从字符 25 读取文件,因为这是开始日期,它应该定期检查是否有任何旧文件。当前我的脚本如下所示:
#!/bin/bash
rm *$(date -d "-1 day" +"%y%m%d")*
这个脚本的问题是,如果计算机有几天没有启动和运行,它不会删除超过日期的旧文件,也不会从字符 25 开始。请帮助,谢谢
【问题讨论】:
-
我不知道在 xxxxxxx 中有什么可能性,但我会将最后一个
*替换为.log以避免意外删除在 xxxxxx 中某处具有相同日期字符串的文件。