Bash:在命令发出';正在执行

Bash:在命令发出';正在执行,bash,Bash,我希望看到脚本通过bash执行时的整个输出(不仅仅是返回值),如下所示: #!/bin/sh cmd="$(script.py $arg)" script.py在执行时打印多行,但我无法看到它们 在狂欢节上。是否有办法将输出通过管道传输到标准输出?可能正在将其输出到标准输出。试试这个: #!/bin/sh cmd="$(script.py $arg 2>&1)" 这将显示脚本运行时“生成”的每一行: while read line; do echo $line;

我希望看到脚本通过bash执行时的整个输出(不仅仅是返回值),如下所示:

#!/bin/sh    
cmd="$(script.py $arg)"
script.py在执行时打印多行,但我无法看到它们
在狂欢节上。是否有办法将输出通过管道传输到标准输出?

可能正在将其输出到标准输出。试试这个:

#!/bin/sh    
cmd="$(script.py $arg 2>&1)"

这将显示脚本运行时“生成”的每一行:

while read line; do echo $line; done < <(script.py $arg 2>&1)
读行时
;不要重复$line;完成<&1)
正如上面帖子中所建议的,它还将把stderr重定向到stdout