cmd1 | cmd2
将仅以cmd1输出作为参数调用cmd2一次。我想要的是每一行cmd1输出作为参数逐个调用cmd2。也许看起来像这样:bash中是否有管道映射?
cmd1 | map cmd2
我知道我可以自己写一个,只是想知道是否有内置的支持已经?
cmd1 | cmd2
将仅以cmd1输出作为参数调用cmd2一次。我想要的是每一行cmd1输出作为参数逐个调用cmd2。也许看起来像这样:bash中是否有管道映射?
cmd1 | map cmd2
我知道我可以自己写一个,只是想知道是否有内置的支持已经?
cmd1 | xargs -l cmd2
这是我最喜欢的方式。感谢Paulo Ebermann!
使用xargs的
cmd1|xargs cmd2
如:
ls xyz*|xargs grep "abc"
农行将在其名称中的所有文件进行搜索开始与XYZ
请注意,对于每行'cmd1','xargs'并不能帮助你准确调用'cmd2' ** ** **。它会尽可能地调用'cmd2'! – 2011-03-24 06:52:20
@Joachim Sauer,你是对的:) – Dagang 2011-03-24 08:02:25
@Joachim:有'l'切换到'xargs',但是这样做。 – 2011-03-24 10:57:20
我(也许所有的Mac用户)更喜欢'cmd1 | xargs -L1 cmd2'这更通用,'-l'选项在GNU(-L [max-lines]的同义词)中支持,但不支持在BSD中。 – 2013-02-13 11:09:58
@HuiZheng很高兴再次见到你! – Dagang 2013-02-16 14:23:38