管道符 | 与xargs 命令的配合使用

摘要:
xargs命令是一个用于传递参数的过滤器,也是一个用于组合多个命令以成组显示信息的工具。xargs命令是一个强大的命令。它可以捕获一个命令的输出,然后将其传递给另一个命令。可以使用此命令的关键原因是,许多命令不支持pipe | pipe传递参数,这在日常工作中是必要的,因此xargs命令xargs是典型的应用程序指令1.找到要复制的指定数据信息,找到“*.txt”文件,然后批量复制到/oldgirl目录

xargs命令是传递参数的一个过滤器,也是组合多个命令的一个工具         将信息进行分组显示

管道符 | 与xargs 命令的配合使用第1张

xargs 是一个强有力的命令,它能够捕获一个命令的输出,然后传递给另外一个命令

之所以能用到这个命令,关键是由于很多命令不支持管道符 | 管道来传递参数,而日常工作中又有这个必要,所以就有了xargs命令

管道符 | 与xargs 命令的配合使用第2张

 xargs 命令典型应用说明

  1.查找指定数据信息进行复制,查找出"*.txt"文件,批量复制到/oldgirl目录

    01.将找到的信息放置到cp和最终目录中间

    find /oldboy -type f -name "*.txt" | xargs -i cp {} /oldgirl

    管道符 | 与xargs 命令的配合使用第3张

    02.利用cp指明谁是数据最终保存的目录

    find /oldboy -type f -name "*.txt" | xargs cp -t /oldgirl

    管道符 | 与xargs 命令的配合使用第4张

     03.利用find的参数-exec直接对cp命令进行操作

    find ./ -type f -name "*.txt" -exec cp {} ./oldgirl ;

    管道符 | 与xargs 命令的配合使用第5张

  2.查找指定数据信息进行移动,查找出"*.txt"文件,批量移动到/oldgirl目录

    01.将找到的信息放置到mv和最终目录之间

    find ./ -type f -name "*.txt" | xargs -i mv {} ./oldgirl

`     02.利用mv指明谁是数据最终保存的目录

    find ./ -type f -name "*.txt" | xargs mv -t mv ./oldgirl

    03.利用find的参数-exec直接对mv命令进行操作

    find ./ -type f -name "*.txt"  -exec mv {} ./oldgirl ;

  3.查找指定数据信息进行删除,查找出"*.txt"文件,批量删除

    find ./ -type f -name "*.txt" | xargs rm

    find ./ -type f -name "*.txt" -exec rm -rf {} ;

    find ./ -type f -name "*.txt" -delete

xargs 命令还有一个作用就是可以忽略别名

  管道符 | 与xargs 命令的配合使用第6张

   对于上述结果来说 xargs 命令自动忽略别名功能,所以对于xargs命令来说,它不认识ll命令,因为ll是ls -l 的别名

  此时如果要执行 ll 命令必须摒弃别名,用正常命令来执行

扩展说明:系统中如何忽略别名

  1.使用命令绝对路径

  2.在命令执行前加

  3.xargs命令自动忽略别名

免责声明:文章转载自《管道符 | 与xargs 命令的配合使用》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇JDBC数据类型、Java数据类型、标准sql类型RedHat7配置IdM server下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

linux批量操作(一)

一、常用命令 1、关闭所有java进程命令:   ps -ef | grep java | grep -v grep | awk '{print $2}' | xargs kill -9 2、批量文本操作   替换字符串:sed -i 's/原字符串/新字符串/g' /home/1.txt   删除字符串:sed -i '/字符串/d' file   字符...

Linux中往文件中的某行插入数据 以及 行列转化的做法(paste、xargs等)

sed -i 'nix' test.file        表示向test.file文件里的第n行的前面添加x内容sed -i 'nax' test.file       表示向test.file文件里的第n行的后面添加x内容 sed -i '/m/ix' test.file     表示向test.file文件里匹配m字符串的行的前面添加x内容sed -...

centos 删除指定文件之外的其他文件

linux下删除指定文件之外的其他文件   一、Linux下删除文件和文件夹常用命令如下: 删除文件: rm file  www.2cto.com   删除文件夹: rm -rf dir 需要注意的是, rmdir 只能够删除 空文件夹。   二、删除制定文件(夹)之外的所有文件呢?   1、方法1,比较麻烦的做法是: 复制需要保留的文件到其他文件夹,然后...

linux-基础命令

目录 文件管理 文件查看cat 更改文件权限chmod 改属主属组chown 对比文件diff 文件查看head/tail/more/less实时监控日志 文件移动更名mv 文件删除rm 文件分割split 新建文件touch 文件预设权限umask 文件查找which 文件复制cp 文件查找whereis 远程文件复制scp 文档编辑...

Ubuntu, 删除rc状态的packages

sudo apt-get remove之后,可能还会有一些包处于rc状态,这表示这些包已经被remove,但是保留了配置文件(config file)。要彻底删除这些包和残留的配置文件,用这个命令即可: dpkg -l |grep ^rc|awk '{print $2}' |tr ["\n"] [" "] | sudo xargs dpkg -P -...

linux中批量删除带空格的文件

两种批量删除带空格文件的方式: 第一种用find找到需要删除的文件,-print0指将空格替换成Null;而xargs中的-0参数又将null转换成空格 find . -name "xfsf*" -print0 | xargs -0 rm -rf    第二种用ls查找需要删除的文件,xargs中的-i参数指将每一项的名称替换成{} ls . |grep...