day6、Linux下如何找出7天以前的文件删除

有些时候,由于系统产生的日志文件,使服务器的磁盘空间紧张,所以怎么删除7天以前的日志文件及让系统只保留7天以内的日志文件

方法一

使用命令:find + |xargs + ls

命令方法:find /app/logs/ -type f -name "*.log" -mtime +7|xargs ls -l   这里是使用的ls 找出来, 找出来之后看一下对  换成rm 就可以了

[root@lo-01 logs]# find /app/logs/ -type f -name "*.log" -mtime +7|xargs ls -l

-rw-r--r--. 1 root root 0 May  1 00:00 /app/logs/access_www_2017-05-01.log

-rw-r--r--. 1 root root 0 May  2 00:00 /app/logs/access_www_2017-05-02.log

-rw-r--r--. 1 root root 0 May  3 00:00 /app/logs/access_www_2017-05-03.log

-rw-r--r--. 1 root root 0 May  4 00:00 /app/logs/access_www_2017-05-04.log

-rw-r--r--. 1 root root 0 May  5 00:00 /app/logs/access_www_2017-05-05.log

-rw-r--r--. 1 root root 0 May  6 00:00 /app/logs/access_www_2017-05-06.log

-rw-r--r--. 1 root root 0 May  7 00:00 /app/logs/access_www_2017-05-07.log

-rw-r--r--. 1 root root 0 May  8 00:00 /app/logs/access_www_2017-05-08.log

-rw-r--r--. 1 root root 0 May  9 00:00 /app/logs/access_www_2017-05-09.log

-rw-r--r--. 1 root root 0 May 10 00:00 /app/logs/access_www_2017-05-10.log

-rw-r--r--. 1 root root 0 May 11 00:00 /app/logs/access_www_2017-05-11.log

-rw-r--r--. 1 root root 0 May 12 00:00 /app/logs/access_www_2017-05-12.log

方法二

使用命令:ls  find

命令格式:ls -l $(find /app/logs/ -type f -name "*.log" -mtime +7)

ls -l `find /app/logs/ -type f -name "*.log" -mtime +7`    这里也是使用的ls  查找出来 对就换成rm命令

[root@lo-01 logs]# ls -l `find /app/logs/ -type f -name "*.log" -mtime +7`

-rw-r--r--. 1 root root 0 May  1 00:00 /app/logs/access_www_2017-05-01.log

-rw-r--r--. 1 root root 0 May  2 00:00 /app/logs/access_www_2017-05-02.log

-rw-r--r--. 1 root root 0 May  3 00:00 /app/logs/access_www_2017-05-03.log

-rw-r--r--. 1 root root 0 May  4 00:00 /app/logs/access_www_2017-05-04.log

-rw-r--r--. 1 root root 0 May  5 00:00 /app/logs/access_www_2017-05-05.log

-rw-r--r--. 1 root root 0 May  6 00:00 /app/logs/access_www_2017-05-06.log

-rw-r--r--. 1 root root 0 May  7 00:00 /app/logs/access_www_2017-05-07.log

-rw-r--r--. 1 root root 0 May  8 00:00 /app/logs/access_www_2017-05-08.log

-rw-r--r--. 1 root root 0 May  9 00:00 /app/logs/access_www_2017-05-09.log

-rw-r--r--. 1 root root 0 May 10 00:00 /app/logs/access_www_2017-05-10.log

-rw-r--r--. 1 root root 0 May 11 00:00 /app/logs/access_www_2017-05-11.log

-rw-r--r--. 1 root root 0 May 12 00:00 /app/logs/access_www_2017-05-12.log

方法三

使用命令:find ls

命令格式:find /app/logs/ -type f -name "*.log" -mtime +7 -exec ls -l {} \;

[root@lo-01 logs]# find /app/logs/ -type f -name "*.log" -mtime +7 -exec ls -l {} \;

-rw-r--r--. 1 root root 0 May  3 00:00 /app/logs/access_www_2017-05-03.log

-rw-r--r--. 1 root root 0 May  5 00:00 /app/logs/access_www_2017-05-05.log

-rw-r--r--. 1 root root 0 May 12 00:00 /app/logs/access_www_2017-05-12.log

-rw-r--r--. 1 root root 0 May  6 00:00 /app/logs/access_www_2017-05-06.log

-rw-r--r--. 1 root root 0 May  7 00:00 /app/logs/access_www_2017-05-07.log

-rw-r--r--. 1 root root 0 May  9 00:00 /app/logs/access_www_2017-05-09.log

-rw-r--r--. 1 root root 0 May  4 00:00 /app/logs/access_www_2017-05-04.log

-rw-r--r--. 1 root root 0 May  2 00:00 /app/logs/access_www_2017-05-02.log

-rw-r--r--. 1 root root 0 May 10 00:00 /app/logs/access_www_2017-05-10.log

-rw-r--r--. 1 root root 0 May  1 00:00 /app/logs/access_www_2017-05-01.log

-rw-r--r--. 1 root root 0 May 11 00:00 /app/logs/access_www_2017-05-11.log

-rw-r--r--. 1 root root 0 May  8 00:00 /app/logs/access_www_2017-05-08.log

 

如果不想这么麻烦想要自动清理,写到定时任务即可,注意定时任务格式及命令要使用绝对路径

 

 

 

 

 

 

posted @ 2017-09-18 15:47  酷酷的二连长  阅读(1566)  评论(0编辑  收藏  举报