1

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

#!/bin/sh    
cmd="$(script.py $arg)"

script.py 在执行时打印多行,但我无法在 bash 中看到它们。有没有办法将输出通过管道传输到标准输出?

4

2 回答 2

1

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

while read line; do echo $line; done < <(script.py $arg 2>&1)

正如上面帖子中所建议的,它还将stderr重定向到stdout

于 2012-10-05T05:16:54.453 回答
1

也许它正在输出到标准错误。尝试这个:

#!/bin/sh    
cmd="$(script.py $arg 2>&1)"
于 2012-10-05T05:10:54.673 回答