用于让不支持从管道接收输入的命令支持管道输入,其实就是把管道的输入的内容按空格分割(默认空格分割),然后自动拼接到命令后面
echo "cat" | xargs man //最后的结果其实就是执行:man cat
echo "java" | xargs killall //最后的结果其实就是执行:killall java
echo ". .." | xargs ls //最后的结果其实就是执行:ls . ..
当需要填充的参数不在目标命令最后时,需要借助“-I”参数,并设置一个替换符号,下面我们用“{}”表示前面获取到的“hello”字符串
echo "hello" | xargs -I {} echo "{} world"
当需要执行类似打开ssh之类的终端时,需要用到-o参数
echo "localhost" | xargs -o ssh