重点
-
最通用:使用 find 命令(优先掌握)
-
最方便:使用 tmpwatch 命令(向客户推荐该命令)
使用 find 命令完成该需求
命令模板:
find $DIR -type f -mtime + $DAY -exec rm -f {} ;
其中:
-
$DIR 是要删除文件的目录,请自行替换内容,使用完整路径
-
$DAY 天数,请自行替换
重要的
命令后面的 -exec rm -f {}\; 就是真正的删除操作
最好第一次运行时将该选项删除,和客户沟通确认后可以删除,再加上该选项。
▶示例:删除 /home/chenjian 目录下 30 天未修改的文件
/*先找到匹配的文件并列出*/
[root@localhost ~]# find /home/chenjian -type f -mtime +30
/*和客户确认后,再执行删除操作*/
[root@localhost ~]# find /home/chenjian -type f -mtime +30 -exec rm -f {} \;
使用 tmpwatch 命令完成该需求
该命令默认在软件仓库中提供( DVD 中也有),但系统默认没有安装。使用以下命令进行安装即可
[root@localhost ~]# yum -y install tmpwatch
命令模板:
tmpwatch -tv $HOUR $DIR
其中:
$HOUR 是以小时为单位的时间,请自行计算后替换
$DIR 是要删除文件的目录,请自行替换
重要的
-tv 选项一定要加,表示以测试模式运行,该模式仅列出要删除的文件而不会真正删除它们
如果不加,默认情况下, tmpwatch 命令会直接删除文件。
▶ 示例:删除 /home/chenjian 目录下 45 天未修改的文件
1. 首先计算 45 天是多少小时(45×24=1080 小时)
2. 编写命令,记住一定要添加 -tv 选项
[root@localhost ~]# tmpwatch -tv 1080 /home/chenjian
附:tmpwatch 命令运行效果,仅列出 24 小时未修改的文件(带 tv 选项)
[root@localhost ~]# tmpwatch -tv 24 /var/tmp/
grace period is 86400 seconds
cleaning up directory /var/tmp
cleaning up directory /var/tmp/systemd-private-508b03c0416340ad9d85cc14f155c5a3-chronyd.service-olEuG5
cleaning up directory /var/tmp/systemd-private-508b03c0416340ad9d85cc14f155c5a3-chronyd.service-olEuG5/tmp
removing directory /var/tmp/systemd-private-508b03c0416340ad9d85cc14f155c5a3-chronyd.service-olEuG5/tmp if empty
removing directory /var/tmp/systemd-private-508b03c0416340ad9d85cc14f155c5a3-chronyd.service-olEuG5 if empty
cleaning up directory /var/tmp/systemd-private-508b03c0416340ad9d85cc14f155c5a3-httpd.service-p0EHdJ
cleaning up directory /var/tmp/systemd-private-508b03c0416340ad9d85cc14f155c5a3-httpd.service-p0EHdJ/tmp
removing directory /var/tmp/systemd-private-508b03c0416340ad9d85cc14f155c5a3-httpd.service-p0EHdJ/tmp if empty
removing directory /var/tmp/systemd-private-508b03c0416340ad9d85cc14f155c5a3-httpd.service-p0EHdJ if empty
cleaning up directory /var/tmp/systemd-private-508b03c0416340ad9d85cc14f155c5a3-php-fpm.service-wR8gWD
cleaning up directory /var/tmp/systemd-private-508b03c0416340ad9d85cc14f155c5a3-php-fpm.service-wR8gWD/tmp
removing directory /var/tmp/systemd-private-508b03c0416340ad9d85cc14f155c5a3-php-fpm.service-wR8gWD/tmp if empty
removing directory /var/tmp/systemd-private-508b03c0416340ad9d85cc14f155c5a3-php-fpm.service-wR8gWD if empty
cleaning up directory /var/tmp/systemd-private-508b03c0416340ad9d85cc14f155c5a3-grafana-server.service-v9OMxD
cleaning up directory /var/tmp/systemd-private-508b03c0416340ad9d85cc14f155c5a3-grafana-server.service-v9OMxD/tmp
removing directory /var/tmp/systemd-private-508b03c0416340ad9d85cc14f155c5a3-grafana-server.service-v9OMxD/tmp if empty
removing directory /var/tmp/systemd-private-508b03c0416340ad9d85cc14f155c5a3-grafana-server.service-v9OMxD if empty
[root@localhost ~]#
附:tmpwatch 命令运行效果,直接删除24小时未修改的文件(不带 tv 选项)
[root@localhost ~]# tmpwatch 24 /var/tmp/
[root@localhost ~]#
【微|信|公|众|号:厦门微思网络】