我正在使用以下命令删除旧的备份文件:
find backups/ -name "bak_*.tbz" -mmin +4800 -exec rm -vf {} \;
问题:当没有新文件时,所有文件都被删除。在这种情况下,我想保留最新的。
除最新文件外,删除旧文件的优雅方法是什么?
我正在使用以下命令删除旧的备份文件:
find backups/ -name "bak_*.tbz" -mmin +4800 -exec rm -vf {} \;
问题:当没有新文件时,所有文件都被删除。在这种情况下,我想保留最新的。
除最新文件外,删除旧文件的优雅方法是什么?
这假定 GNU
find
并将打印修改时间和文件名,按 mod 时间排序,删除第一行(最新文件),删除 mod time 列并将其移交给xargs
删除(如上所述,它只会回显删除命令,而不是实际执行)。