find . -name 'config.xml' | xargs -i sed -i "s#-exec rm -rf {\([^}]*\)} \\\;#| xargs rm -rf#" {} //sed查找匹配{}号 xargs在find前后是随机产生的
上面的例子中,find命令匹配到了当前目录下的所有普通文件,并在-exec选项中使用ls -l命令将它们列出。 在/logs目录中查找更改时间在5日以前的文件并删除它们://*** $ find logs -type f-mtime +5-exec rm { } \; 记住:在shell中用任何方式删除文件之前,应当先查看相应的文件,一定要小心!当使用诸如mv或rm...
使用find时,只要把想要的操作写在一个文件里,就可以用exec来配合find查找,很方便的 在有些操作系统中只允许-exec选项执行诸如l s或ls -l这样的命令。大多数用户使用这一选项是为了查找旧文件并删除它们。建议在真正执行rm命令删除文件之前,最好先用ls命令看一下,确认它们是所要删除的文件。 exec选项后面跟随着所...
<4> find /data/ -name "*.txt" -exec mv{} /tmp/ \; 查找/data/目录下以.txt结尾的文件把它移动到tmp目录下 <5> find /tmp/ -name "*.txt" -exec mv{} . \; 查看/tmp/目录下以.txt结尾的文件移动到当前目录下 <6> find . -name "jfedu.txt" -exec rm-rf {} \; 查找当前目录下文...
find . -type d -empty -delete 此命令将删除当前目录及其子目录下所有空目录。 2. 使用-exec选项执行rm命令 对于需要更复杂条件判断的文件删除任务,你可以使用-exec选项来执行rm命令。这种方法适用于删除非空目录或需要额外确认的文件。 删除特定条件的文件: sh find . -name "*.log" -exec rm {} \;...
find命令选项 -name 按照文件名查找文件。 -perm 按照文件权限来查找文件。 -prune 使用这一选项可以使find命令不在当前指定的目录中查找,如果同时使用了 -depth 选项,那么- prune选项将被find命令忽略。 -user 按照文件属主来查找文件。 -group 按照文件所属的组来查找文件。
{}花括号代表前面find查找出来的文件名。 使用find时,只要把想要的操作写在一个文件里,就可以用exec...
方法1:xargs rm -f find ./ -type f -name "*txt" | xargs rm -f 方法2:-exec rm -f find ./ -type f -name "*txt*" -exec rm -f {} \; -exec命令是查找到的每个文件调用一次rm命令,因此速度最慢 方法3:-delete find ./ -type f -name "*txt" -delete ...
$find /logs -name 'admin.log[0-9][0-9][0-9]' -atime +7 -exec rm {} \; 为了查找当前文件系统中的所有目录并排序,可以用: $find . -type d -print -local -mount |sort 为了查找系统中所有的rmt磁带设备,可以用: $find /dev/rmt -print...
#-exec command {} \; —–将查到的文件执行command操作,{} 和 \;之间有空格 #-ok 和-exec相同,只不过在操作前要询用户 例:find . -name .svn | xargs rm -rf 属性: -name filename #查找名为filename的文件 -perm #按执行权限来查找