工作经常需要用find结合其它命令一起使用,下面介绍4种结合方式.

例: 用find查找/data目录下,以.txt文件结尾的文件并复制到/tmp下

方法一

find与|xargs是黄金搭档,-t 参数指定目标目录(效率高,因为 xargs 会让命令作为一行来执行.)

[root@Jonnyan ~]# find /data/ -type f -name"*.txt" | xargs cp -t /tmp

方法二

{} 大括号里的内容为find命令找到的结果(效率低,因为 exec 会让命令分多次执行.)

[root@Jonnyan ~]# find /data/ -type f -name"*.txt" -exec cp {} /tmp \;

方法三

$()=` ` 存放命令的执行结果

[root@Jonnyan ~]# cp $(find /data/ -type f -name"*.txt") /tmp

方法四

-i 参数指定找到的结果放到{}中

[root@Jonnyan ~]# find/data/ -type f -name "*.txt" | xargs -i cp{} /tmp

find 排除多个目录

find /tmp/jonny \( -path /tmp/jonny/dir1 -o -path /tmp/jonny/file1 \) -prune -o -name "*" -print

  • 在 shell 中,"与" 和 "或" 有两种表达方式。
  • 在 shell 中,"与" 的运算符为 "-a",同时,"与" 的逻辑运算符也可以用 "&&" 表示。
  • 在 shell 中,"或" 的运算符为 "-o",同时,"或" 的逻辑运算符也可以用 "||" 表示。
    解释参考:http://www.zsythink.net/archives/1154

find命令结合cp bash mv 命令使用的4种方式的更多相关文章

  1. Linux常用命令之cp、mv、rm、cat、more、head、tail、ln命令讲解

    上一章节中,我们了解到了Linux系统的最基础的几个文件处理命令,核心的是ls命令,在今天这章中,我们来继续学习Linux对于文件操作相关的一些命令,比如复制.移动.删除.查看等命令. 1.cp 命令 ...

  2. linux命令学习笔记( 7 ) : mv 命令

    mv命令是move的缩写,可以用来移动文件或者将文件改名(move (rename) files),是Linux系统下常用的命令, 经常用来备份文件或者目录. .命令格式: mv [选项] 源文件或目 ...

  3. ps | grep app 命令不显示grep app本身进程的几种方式

    ps | grep app 命令不显示grep app本身进程的几种方式 使用ps命令查询进程,常常我们不想打印出"ps | grep app"这个当前进程,比如如下: [root ...

  4. Linux命令行下cp,rm,mv命令的使用

    以下的内容来源于<鸟哥的私房菜> Linux命令行下的复制.删除与移动:cp,rm,mv cp(copy)复制        cp这个命令的用途很多,除了单纯的复制之外,还可以创建链接文件 ...

  5. Linux命令下,cp,rm,mv命令的使用

    Linux命令行下的复制.删除与移动:cp,rm,mv cp(copy)复制        cp这个命令的用途很多,除了单纯的复制之外,还可以创建链接文件对比两文件的新旧而予以更新,        以 ...

  6. Linux 常用命令六 cp和mv

    一.cp命令 Linux中的复制命令. 复制文件: wang@wang:~/workpalce/python$ tree . ├── .txt ├── dir └── module directori ...

  7. cp和mv命令

    注意事项:mv与cp的结果不同,mv好像文件“搬家”,文件个数并未增加.而cp对文件进行复制,文件个数增加了. 一.cp命令 cp命令用来将一个或多个源文件或者目录复制到指定的目的文件或目录.它可以将 ...

  8. 每天一个Linux命令(9)mv命令

    mv命令用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中. 注意事项:mv与cp的结果不同,mv好像文件“搬家”,文件个数并未增加.而cp对文件进行复制,文件个数增加了.     (1) ...

  9. Ubuntu上使用过的命令,Linux常用命令,mount 硬盘挂载, ls 列表list命令,cp 复制copy命令,mkdir 创建文件夹 ,nano 编辑器,cat 文档合并,chmod 文件权限,ssh win10连接ubuntu服务器的步骤

    man 帮助 > man ls # ubuntu的帮助 tar.gz 压缩解压 > tar -zcvf yzn.tar.gz /home/yzn # 压缩 > tar -zxvf y ...

随机推荐

  1. QSignalMapper类的使用

    Qt中当定义了非常多的button,而他们的信号都同样时(比方都是点击信号),没有必要给他们每一个都设置信号和槽的链接.QSignalMapper给我们攻克了这个难题. 今天完毕这个相似的功能时,不知 ...

  2. iOS多线程之NSOperation和NSOperationQueue的使用

    一:NSOperation 两个子类+重写main方法 NSInvocationOperation NSBlockOperation 有个类方法 BlockOprationWith: 还有就是自己个子 ...

  3. 算法笔记_084:蓝桥杯练习 11-1实现strcmp函数(Java)

    目录 1 问题描述 2 解决方案   1 问题描述 问题描述 自己实现一个比较字符串大小的函数,也即实现strcmp函数.函数:int myStrcmp(char *s1,char *s2) 按照AS ...

  4. LoadRunner监控Tomcat的几种方法

    通过JConsole监控Tomcat 1.打开tomcat5的bin目录中的catalina.bat文件,在头部注释部分的后面加上: set JAVA_OPTS=%JAVA_OPTS% -Dcom.s ...

  5. raspberry pi install iceweasel

    sudo apt-get update sudo apt-get upgrade sudo apt-get install iceweasel

  6. Hibernate 主配置文件详解

    摘要: 版权声明:本文为博主原创文章,如需转载请标注转载地址. 博客地址:http://www.cnblogs.com/caoyc/p/5595870.html 一.主配置文件命名规则 1.默认名称: ...

  7. Load和CPU利用率是如何算出来的 (转发)

    本文内容遵从CC版权协议, 可以随意转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明网址: http://www.penglixun.com/tech/system/how_to_cal ...

  8. PHP 导出 CSV 文件用 Excel 打开出现中文乱码

    本篇文章由:http://xinpure.com/php-export-csv-file-opened-by-excel-appear-garbled/ 乱码情况 写了一段导出 CSV 文件的代码,可 ...

  9. Layui 弹出层组件——layer的模块化开发实例应用

    Layui 弹出层组件——layer的模块化开发实例应用 1.首先在package.json中引入layer组件依赖 2.在源码中应用这个依赖 3.在源码中编写代码应用此组件 4.效果验证:点击日历上 ...

  10. echart初体验 动态加载数据

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...