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.一次将参数传给命令,可以使用-n控制参数个数
    2.处理特殊文件名需要采用如下方式:  find . -name "*.txt" print0 |xargs -0 rm {}

实验结果如下,可以清楚看到参数传递过程

[root@andes.com ~/tmp/dir]#find . -type f |xargs -t -n  echo
echo ./data.txt ./env2.txt
./data.txt ./env2.txt
echo ./env.txt ./export2.txt
./env.txt ./export2.txt
echo ./s.txt ./d.txt
./s.txt ./d.txt
echo ./export.txt ./set.txt
./export.txt ./set.txt
echo ./fuck.txt
./fuck.txt
[root@andes.com ~/tmp/dir]#find . -type f -exec echo begin {} \;
begin ./data.txt
begin ./env2.txt
begin ./env.txt
begin ./export2.txt
begin ./s.txt
begin ./d.txt
begin ./export.txt
begin ./set.txt
begin ./fuck.txt
[root@andes.com ~/tmp/dir]#

find -print0  与 xargs -0 的结合避免文件名有特殊字符如空格,引号等无法处理:

find . -name "*.txt" print0 |xargs -0 rm {}

find

-print True; print the full file name on the standard output, followed by a newline.   If you are piping the
              output of find into another program and there is the faintest possibility that the  files  which  you
              are  searching  for  might  contain  a  newline, then you should seriously consider using the -print0
              option instead of -print.  See the UNUSUAL FILENAMES section for information about how unusual  char-
              acters in filenames are handled.

-print0
              True;  print  the full file name on the standard output, followed by a null character (instead of the
              newline character that -print uses).  This allows file names that contain newlines or other types  of
              white space to be correctly interpreted by programs that process the find output.  This option corre-
              sponds to the -0 option of xargs.

xargs

-0     Input items are terminated by a null  character  insteadof  by
     whitespace,  and the quotes and backslash are not special (every
     character is taken literally).  Disables the end of file string,
     which  istreated  like
any other argument.  Useful when input
     items might contain white space, quote  marks,  or  backslashes.
     The  GNU
find  -print0  option produces input suitable for this
     mode.

find只查当前目录 和 -exec和xargs区别的更多相关文章

  1. exec与xargs区别

    区别描述: 两者都是对符合条件的文件执行所给的Linux 命令,而不询问用户是否需要执行该命令. -exec:{}表示命令的参数即为所找到的文件,以:表示comman命令的结束.\是转义符,因为分号在 ...

  2. find -exec 与xargs 区别

    find . -name "*.txt" -exec rm {} \;find . -name "*.txt" | xargs rm {} -exec    1 ...

  3. 【JavaEE】Hibernate继承映射,不用多态查询只查父表的方法

    几个月前,我在博问里面发了一个问题:http://q.cnblogs.com/q/64900/,但是一直没有找到好的答案,关闭问题以后才自己解决了,在这里分享一下. 首先我重复一下场景,博问里面举的动 ...

  4. linux中exec和xargs命令的区别和优劣分析

    find的exec及ok命令 exec命令的格式为: exec command {} \; exec后面跟着的是操作命令,然后跟着{}表示每一个参数,然后空格,然后"\;".{}之 ...

  5. MySQL 笔记整理(19) --为什么我只查一行的语句,也执行这么慢?

    笔记记录自林晓斌(丁奇)老师的<MySQL实战45讲> (本篇内图片均来自丁奇老师的讲解,如有侵权,请联系我删除) 19) --为什么我只查一行的语句,也执行这么慢? 需要说明一下,如果M ...

  6. [Linux] 终端设置只显示当前目录及终端美化

    1.只显示当前目录 vim ~/.bashrc 找到位置: if [ "$color_prompt" = yes ]; then PS1='${debian_chroot:+($d ...

  7. find命令之exec和xargs

    exec: find是我们很常用的一个Linux命令,但是我们一般查找出来的并不仅仅是看看而已,还会有进一步的操作,这个时候exec的作用就显现出来了. exec解释: -exec  参数后面跟的是c ...

  8. find命令应用exec及xargs

    find最普通的用法是查找文件,然后要对文件进行处理就需要用到参数-exec. 先看下manpage中介绍: -exec command ; Execute command; status is re ...

  9. -exec 与 xargs 的区别

    实地在shell里执行下如下命令就知道区别了: $ find -type f -exec echo {} \; 很明显,exec是对每个找到的文件执行一次命令.从这里可以看出exec的缺点是每处理一个 ...

随机推荐

  1. zabbix(sql注入判断脚本)

    zabbix(sql注入判断脚本) #-*-coding:utf-8-*- # code by anyun.org import urllib import re def getHtml(url): ...

  2. with(nolock)的用法

    with(nolock)的介绍 大家在写查询时,为了性能,往往会在表后面加一个nolock,或者是with(nolock),其目的就是查询是不锁定表,从而达到提高查询速度的目的. 当同一时间有多个用户 ...

  3. 信息安全系统设计基础exp_3

    详情请看搭档20135322郑伟博客,传送门如下:http://www.cnblogs.com/zhengwei0712/p/4996017.html

  4. Opencv step by step - 绘图

    有时候我们需要在图像上写一些字或者画一些简单的几何图案. 祭上代码: #include <cv.h> #include <highgui.h> int main(int arg ...

  5. 常用的user32API说明

    整理了一下常用的user32API说明 还有软件Microsoft Spy++供大家下载  Spyv10.00.30319.rar using System; using System.Collect ...

  6. java数据类型总结

    java8大基本数据类型: 整型: byte 字节型     1字节   数据范围:-27   ~  27- 1  即:-128 ~ 127 short 短整型    2字节 数据范围:-215 ~ ...

  7. java之运算符

    package com.simope.myTest; import java.util.HashMap; import java.util.Iterator; import java.util.Map ...

  8. 傻傻分不清楚的php脚本路径

     闲话就不说了,还是直接提出今天的问题,准确的说,对多个相似的 有关当前脚本信息的全局变量常量的区分. 先贴上代码: <?php echo $_SERVER['PHP_SELF']; echo ...

  9. I belonged to you

    小葫芦,你就像山间清爽的风,犹如古城温暖的光,在我的旅途中陪伴着我. 我想牵着你的手,踏遍万水千山,赏遍美景风光,春观夜樱,夏望繁星,秋赏满月,冬会初雪. 直到两鬓斑白,一起坐在火炉旁,给孩子们讲故事 ...

  10. promise与aysnc 与EventProxy

    promise 已经是 es6推荐的内置的东西了,所以我们需要清楚. promise的使用类似与jquery的链式操作,.then()  .then()中不断使用.回调看上去清晰明了,建议使用. as ...