xargs

  

 

  1. a b c d e f g
    h i j k l m n
    o p q
    r s t
    u v w x y z
    

     


     

     

     

  2. 默认使用所有, 且于最后

     

     

  3.  

    -n  --max-args=MAX-ARGS          use at most MAX-ARGS arguments at a time
    

      

     

     
    使用 -n1 使 xargs 每次传入一个参数, 也是位于最后

  4.  

    -I --replace=mark
    

      

     

     
    -I 可以改变参数位置, 但是似乎与 -n 冲突


     

     
    -n 和 -I 位置不同效果不同, 效果是 在后面使用的 覆盖了前一个选项

     

     
    我的经验是,使用管道,避免同时使用 -n 和 -I


     

     

     

  5. -a --arg-file=FILE       read arguments from file, not standard input
    

      
    xargs 默认从stdin 读入 可使用 -a 使其从文件读入


     

     

  6.  

    -t --verbose   print commands before executing them
    

      
    debug


     

     


  7.  

    -d --delimiter=CHARACTER
    

      

     

     

     

     

     

     
    多用管道处理

     

  8. 复制所有图片文件到 /data/images 目录下

    ls *.jpg | xargs  -I {} cp {} /data/images
    

      

  9. 用 rm 删除太多的文件时候,可能得到一个错误信息:/bin/rm Argument list too long. 用 xargs 去避免这个问题

    find . -type f -name "*.log" -print0 | xargs -0 rm -f
    

      

  10. 统计一个源代码目录中所有 php 文件的行数

    find . -type f -name "*.php" -print0 | xargs -0 -wc --lines
    

      

  11. 查找所有的 jpg 文件,并且压缩它们

    find . -type f -name "*.jgp" -print | xargs tar -cvzf image.tar.gz
    

      

  12.  

    wget

    cat url.txt | xargs wget -c
    

      


     

posted @ 2021-06-24 14:06  ascertain  阅读(42)  评论(0编辑  收藏  举报