Unix 系统上是否有一个命令可以检查“上次访问”日期每一个系统上的文件(或者更好的是,从运行命令的目录递归),然后打印出来最近最少访问的 10 个(或以其他方式定义的数量)文件?
(我目前正在我的 Mac 上进行文件清理,并希望确定应该删除哪些文件,但我对执行此操作的正确 Unix 方式感兴趣,而不是 Apple 特有的任何方式)。
答案1
正如中所回答的查找最新文件,标准 Unix/Linux 计算机上的命令是:
find . -type f -exec stat -c '%X %n' {} \; | sort -nr | awk 'NR==1,NR==10 {print $2}'
如果您使用的是苹果,标志稍作修改,命令为:
find . -type f -exec stat -f '%a %N' {} \; | sort -nr | awk 'NR==1,NR==10 {print $2}'
在这两个命令中,编辑NR=10
您希望查看的文件数量。