1.xargs
常用组合
① 查找某路径下文件内容中是否包含某一关键字
# 当前目录下所有文件内容中包含name的文件(包括子路径下所有文件)
find ./ | xargs grep "name"
② 复制某一路径下的某一类格式的文件到另一路径下/删除等…同理
# 复制当前路径下的png文件到/tmp路径下,并在他们文件名后加上.txt后缀
ls *.png| xargs -n 1 -I {} cp {} /tmp/{}.txt
# -n参数是将管道传过来的参数以每行一个的展示
xargs一般都是与管道一起使用,那么有了管道为什么还要用xargs呢?
经查询资料,可以解释为-------管道把内容送到标准输入, xargs 是把管道送来的内容转成后边命令的参数
可能你还没有理解这句话是什么意思,那么你可以试一下下面两条命令,并查看返回结果
echo “—help” | cat ---- ①
echo “—help” | xargs cat ---- ②
可以发现①只是输出了’help’,这说明管道不仅仅只是将help加在cat后组成命令这么简单,而使用xargs的预期结果就与我们想要的一致了,与手动输入cat --help得到的返回结果一致。