阮一峰的这篇写的非常详尽了,点个赞!
但是,还是那个问题,Linux的xargs是GNU版本的,而Mac的xargs是BSD版本的,所以还是有着一些差别,记录几个能用、且常用的。
xargs
命令的作用,是将标准输入转为命令行参数。
- -p
询问是否执行 - -t
把执行的命令输出,但不询问 - -L
传入多行参数时,通过L指定多少行执行一次后面的命令 - -n
L是限定每次多少行,n是限定每次多少个,比如一行有多个,可用n来限定 - -I
给每次使用的参数起个名字,后面命令中使用这个名字,在执行的时候会用真实的参数替换这个命名,注意,每次出现的这个命名都会被替换,可能会有一些意想不到的效果1
cat file.text | xargs -I file echo file
- -P
大写的P,进程数量,0表示不限制,能启动多少就启动多少,移动文件的时候适用,多进程会加快一些速度,理论上是这样的,但我实践过后,发现还不如直接用mv,感觉更快一些