Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Shell 如何使用所需参数从管道执行二进制文件列表?_Shell_Unix - Fatal编程技术网

Shell 如何使用所需参数从管道执行二进制文件列表?

Shell 如何使用所需参数从管道执行二进制文件列表?,shell,unix,Shell,Unix,我正在查找并定位几个我想使用-v运行的可执行文件。我试过这样的方法: 查找一些过滤器| xargs-I%%-v 不幸的是,xargs似乎要求“实用程序”是一个固定的二进制文件,而不是stdin提供的二进制文件。有没有人有做这个命令行魔术的诀窍?使用-exec主: find ... -exec '{}' -v \; 另一种方法是使用xargs为您编写shell脚本: find somefilters | xargs -n 1 -I % echo % -v | ${SHELL} 如果任何程序都需

我正在查找并定位几个我想使用-v运行的可执行文件。我试过这样的方法:

查找一些过滤器| xargs-I%%-v


不幸的是,xargs似乎要求“实用程序”是一个固定的二进制文件,而不是stdin提供的二进制文件。有没有人有做这个命令行魔术的诀窍?

使用
-exec
主:

find ... -exec '{}' -v \;

另一种方法是使用
xargs
为您编写shell脚本:

find somefilters | xargs -n 1 -I % echo % -v | ${SHELL}

如果任何程序都需要交互性,那么这就不太好了,但是如果
-v
选项只是为了吐出版本号或其他东西(一个常见的意思,另一个是详细的标志),它应该可以正常工作。

谢谢!我原以为xargs对docs标记为“utility”的参数的限制类似于find文档中的同一标记参数。不应该假设。