我希望看到脚本在通过bash执行时的整个输出(不仅仅是返回值),如下所示:
#!/bin/sh
cmd="$(script.py $arg)"
script.py在执行时打印多行,但我无法看到它们 在bash中。有没有办法将输出传递给stdout?
答案 0 :(得分:1)
也许正在向stderr输出。试试这个:
#!/bin/sh
cmd="$(script.py $arg 2>&1)"
答案 1 :(得分:1)
这将显示脚本运行时“生成”的每一行:
while read line; do echo $line; done < <(script.py $arg 2>&1)
如上文所述,它也会将stderr重定向到stdout