找到并清理一段时间后不再需要的旧文件非常重要。这样可以节省一些磁盘空间。如果你还没有清理旧文件,这是一个快速的方法。这个简短的教程将指导您如何在Linux和类Unix操作系统中查找和删除超过X天的文件。
注意:
运行以下命令时必须非常小心。在删除文件之前,这些命令不会要求您进行任何确认。一旦按下ENTER键,它就会删除文件。所以要非常小心,仔细检查你要删除的文件!
在Linux中查找和删除超过X天的文件
首先,让我们找出超过X天的文件,例如30天。
这样做,只是:
find . -mtime +30 -print
上面的命令将查找并显示超过30天的旧文件。这里,
dot (.) – 表示当前目录。
-mtime - 表示文件修改时间,用于查找超过30天的文件。
-print - 打印旧文件
如果要搜索特定目录中的文件,只需将该点替换为文件夹路径即可。例如,要在/var/log目录中找到超过30天的文件,只需运行:
find /var/log -mtime +30 -print
如下:
/var/log/chrony
/var/log/tallylog
/var/log/grubby
/var/log/rhsm
/var/log/tuned
/var/log/audit
/var/log/grubby_prune_debug
/var/log/ntpstats
/var/log/spooler-20190331
/var/log/anaconda
/var/log/anaconda/syslog
/var/log/anaconda/program.log
/var/log/anaconda/ks-script-GWQMAJ.log
/var/log/anaconda/journal.log
/var/log/anaconda/storage.log
/var/log/anaconda/packaging.log
/var/log/anaconda/ks-script-671w5G.log
/var/log/anaconda/ks-script-5daHKU.log
/var/log/anaconda/anaconda.log
/var/log/anaconda/ifcfg.log
现在,运行以下任一命令删除不再需要的文件。我再次警告您,一旦按下ENTER按钮,这些命令将立即删除文件。在运行这些命令之前,请小心并仔细检查。
find -type f-mtime+30 |xargs rm-f
或者,
find -mtime +30 -exec rm -f {} \;
或者,
find -mtime +30 -delete;