【发布时间】:2010-05-21 09:11:21
【问题描述】:
我正在寻找一个 cron 作业,它打开一个目录循环遍历我创建的所有日志并删除所有行,但保留最后 500 行。
我在想一些类似的东西
tail -n 500 filename > filename
这行得通吗?
我也不确定如何在 bash 中遍历目录。
【问题讨论】:
-
查看其他答案,但您的示例
tail行执行如下:1)外壳打开文件名以输出并将其截断为零长度 2)尾部运行,看到一个空文件和 3)不向现在为空的文件名写入任何内容。 MYYN 的答案显示了您如何避免这种情况,但如果tail遇到错误,即使是炸弹也会爆炸。不要重新发明 tanascius 推荐的 logrotate。