-exec和|xargs】的更多相关文章

区别描述: 两者都是对符合条件的文件执行所给的Linux 命令,而不询问用户是否需要执行该命令. -exec:{}表示命令的参数即为所找到的文件,以:表示comman命令的结束.\是转义符,因为分号在命令中还有它用途,所以就用一个\来限定表示这是一个分号而不是表示其它意思. -ok: 和 -exec 的作用相同,格式也一样,只不过以一种更为安全的模式来执行该参数所给出的shell给出的这个命令之前,都会给出提示,让用户来确定是否执行. xargs 要结合管道来完成格式:find [option]…
find的exec及ok命令 exec命令的格式为: exec command {} \; exec后面跟着的是操作命令,然后跟着{}表示每一个参数,然后空格,然后"\;".{}之后一定要跟一个空格,exec命令以:作为结束,为了表名:只是一个结束符,使用转义字符\加在:前面. ok命令和exec作用相同,唯一的区别在于ok是exec命令的安全模式,在执行command之前会给出提示. xargs命令 xargs命令需要结合管道符|使用,其格式为:** | xargs command…
1.find默认查找当前目录和子目录,通过maxdepth限制只查当前目录: find . -maxdepth 1 -type f -name "*.php" 2. find . -name "*.txt" -exec rm {} \; find . -name "*.txt" | xargs rm {} -exec     1.参数是一个一个传递的,传递一个参数执行一次rm     2.文件名有空格等特殊字符也能处理 -xargs      1…
实地在shell里执行下如下命令就知道区别了: $ find -type f -exec echo {} \; 很明显,exec是对每个找到的文件执行一次命令.从这里可以看出exec的缺点是每处理一个文件/目录,都要启动一次命令,效率不好; 格式麻烦,必须用 {} 做文件的代位符,必须用 "\;" 作为命令的结束符,书写不便.   $ find -type f | xargs echo xargs是把所有找到的文件名一股脑的转给命令.当文件很多时,这些文件名组合成的命令行参数很容易超长…
注意xargs会被空格割裂,所以遇到带有空格的文件名就不好办了,解决方法是使用-print0 例如:删除.目录下30天之前的.png文件 -type f -name rm 或者使用-exec:删除.目录下最近30天的.png文件 -type f -name "*.png" -exec rm {} \; 注意{}与\;有空格…
find . -name "*.txt" -exec rm {} \;find . -name "*.txt" | xargs rm {} -exec    1.参数是一个一个传递的,传递一个参数执行一次rm    2.文件名有空格等特殊字符也能处理-xargs     1.一次将参数传给命令,可以使用-n控制参数个数    2.处理特殊文件名需要采用如下方式:    find . -name "*.txt" print0 |xargs -0 r…
exec: find是我们很常用的一个Linux命令,但是我们一般查找出来的并不仅仅是看看而已,还会有进一步的操作,这个时候exec的作用就显现出来了. exec解释: -exec  参数后面跟的是command命令,它的终止是以;为结束标志的,所以这句命令后面的分号是不可缺少的,考虑到各个系统中分号会有不同的意义,所以前面加反斜杠. {}   花括号代表前面find查找出来的文件名. 使用find时,只要把想要的操作写在一个文件里,就可以用exec来配合find查找,很方便的.在有些操作系统中…
-exec     1.参数是一个一个传递的,传递一个参数执行一次,效率低     2.文件名有空格等特殊字符也能处理 -xargs      1.一次将参数传给命令,可以使用-n控制参数个数     2.处理特殊文件名需要采用如下方式:find . -name "*.txt" -print0 |xargs -0 rm {}  技巧: find -print0  与 xargs -0 的结合避免文件名有特殊字符如空格,引号等无法处理:    3.有些命令不支持多个参数,需要用-n 1…
参考:http://www.cnblogs.com/itxdm/p/5936907.html 一. 先复习下find命令 1. name参数 find -name tom 或 find -iname tom    #其中参数 -iname不区分大小写 2. type参数 find /root -name rabbit -type f 普通文件用 f 表示:符号连接用 l 表示:普通目录用 d 表示:字符设备用 c 表示:块设备用 b 表示:套接字用 s 表示 3. size参数 find /ro…
find最普通的用法是查找文件,然后要对文件进行处理就需要用到参数-exec. 先看下manpage中介绍: -exec command ; Execute command; status is returned. All following arguments to find are taken to be arguments to the command until an argument consisting of `;' is encountered. The string `{}' i…