关于如何在linux上删除超过x分钟/小时/天的文件有很多问题,但没有人能达到秒分辨率.
我找到了这个解决方案:
for file in `ls -ltr --time-style=+%s | awk '{now=systime(); del_time=now-30; if($6<del_time && $5=="0") print $7}'` ;do
rm -f $file >/dev/null 2>&1
done
Run Code Online (Sandbox Code Playgroud)
但是systime()不存在awk
"函数systime从未定义过"
但是gawk我无法在Ubuntu 13.xx上安装(并且真的不想安装任何额外的软件).
Dmi*_*rov 17
解析输出ls总是一个糟糕的方法.特别是find从GNU Findutils能够自己完成所有工作:
$ find -not -newermt '-30 seconds' -delete
Run Code Online (Sandbox Code Playgroud)