linux 按日期,名字等条件查找文件并执行删除,移动命令

linux 按日期,名字等条件查找文件并执行删除,移动命令
find是我们很常用的一个
Linux命令,但是我们一般查找出来的并不仅仅是看看而已,还会有进一步的操作,这个时候 exec 的作用就显现出来了。
exec解释: 
-exec 参数后面跟的是command命令,它的终止是以 ; 为结束标志的,所以这句命令后面的分号是不可缺少的,考虑到各个系统中分号会有不同的意义,所以前面加反斜杠。 
{} 花括号代表前面find查找出来的文件名。
使用 find 时,只要把想要的操作写在一个文件里,就可以用 exec来配合 find 查找,很方便的。在有些
操作系统中只允许 -exec 选项执行诸如 ls 或 ls -l 这样的命令。大多数用户使用这一选项是为了查找旧文件并删除它们。建议在真正执行rm命令删除文件之前,最好先用ls命令看一下,确认它们是所要删除的文件。 exec选项后面跟随着所要执行的命令或脚本,然后是一对儿 { },一个空格和一个 \,最后是一个分号。为了使用 exec 选项,必须要同时使用 print 选项。
示例如下: 
查询文件,名字为*.log,+19是
修改时间距离现在19天的文件
 find /usr/local/tomcat8/logs/ -type f -name "*.log" -mtime +19 -exec ls -l {} \; 
查询出来拷贝到另一个文件夹
find /usr/local/tomcat8/logs/ -type f -name "*.log" -mtime +19 -exec cp -r /usr/test/{} {} \;

Author:

发表评论

电子邮件地址不会被公开。 必填项已用*标注