bash或sh脚本可以看到用于调用它的完整命令(包括管道)吗?

时间:2013-09-25 17:24:34

标签: bash shell sh

例如,在

$ myprefixprogram prog1 | prog2 | prog3

可以myprefixprogram以某种方式查看完整的命令字符串prog1 | prog2 | prog3并可能修改它吗?

(我意识到prog1可通过$*$@ [1]获取

编辑:这实际上是shell输入预处理,但是来自bash / sh,而不是来自没有。

[1] http://www.tldp.org/LDP/abs/html/internalvariables.html#ARGLIST

2 个答案:

答案 0 :(得分:3)

| prog2 | prog3不是您的计划的参数。这是shell重定向,将进程的stdout重定向到以下的stdin。只有shell知道这一点。

prog1确实是您程序的参数,您可以修改它。

但是,我不确定你要做什么。你呢?

答案 1 :(得分:1)

不,shell会解析命令并设置管道,并说你的脚本可以找出子进程。