xargs命令

xargs 作用

  • xargs作用是将标准输入转为命令行参数。
  • args单独使用默认后面是echo
    xargs
    # 等同于
    xargs echo
    
  • 输入xargs按下回车以后,命令行就会等待用户输入,作为标准输入。可以输入任意内容,直到按下Ctrl + d,表示输入结束,这时echo命令就会把前面的输入打印出来。
    xargs
    hello world # Ctrl + d
    hello world
    
  • 例如,可以要查找文件时使用,手动输入需要查找的文件名
    xargs find . -name
    ".xml" # Ctrl + d,手动输入
    

xargs 参数

  • E:表示分隔符,默认是空格和换行
    echo "a\tb\tc" | xargs -E "\t" echo
    
  • p:表示每个命令需要询问
  • t:打印出最终要执行的命令,然后直接执行
  • 0:与find中的print0联合使用,指定输出的文件列表以null分隔
    find /path -type f -print0 | xargs -0 rm
    
  • L:如果标准输入包含多行,可以使用L参数进行控制多少行作为一个命令行参数,注意是多少行
    xargs -L 1 find -name
    "*.xml"
    "*.java"
    
  • n:与L相似,它是控制多少项,一行可以有很多项,用空格隔开
  • I:表示可以将参数传输给多个命令,可以使用{}代码变量名
    cat foo.txt | xargs -I file sh -c 'echo file; mkdir file'
    
  • P:表示可以最多有多少任务并行执行
上一篇:实用的Linux命令行技巧


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