zoukankan      html  css  js  c++  java
  • 管道符 | 与xargs 命令的配合使用

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

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

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

     xargs 命令典型应用说明

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

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

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

        

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

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

        

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

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

        

      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 命令自动忽略别名功能,所以对于xargs命令来说,它不认识ll命令,因为ll是ls -l 的别名

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

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

      1.使用命令绝对路径

      2.在命令执行前加

      3.xargs命令自动忽略别名

  • 相关阅读:
    Linux常用命令大全
    深入浅出Shell编程: Shell 变量
    hadoop权威指南实例源代码网址
    hadoop基本操作命令
    Hadoop集群搭建
    JobStracker与TaskStracker的区别联系
    Linux解压命令
    Java程序作为windows服务运行
    【leetcode】1274. Number of Ships in a Rectangle
    【leetcode】1272. Remove Interval
  • 原文地址:https://www.cnblogs.com/zp751060301/p/12858734.html
Copyright © 2011-2022 走看看