我正在运行一个名为upgrade.sh
的脚本ANd upgrade.sh调用名为roll.sh的脚本
roll.sh >> logfile.text
但roll.sh有一些问题和提示,重定向阻止这些输出击中屏幕。我无法编辑roll.sh.
我也试过`results = $(roll.sh)
即使这样,输出也没有进入屏幕
答案 0 :(得分:13)
使用tee
,它是专门为此目的而创建的:将标准输入转发到屏幕和一个或多个文件。如果您不想覆盖它,请务必使用-a
选项附加到logfile.text
。
roll.sh | tee -a logfile.text
答案 1 :(得分:1)
您想要tee
:
TEE(1) User Commands TEE(1)
NAME
tee - read from standard input and write to standard output and files
答案 2 :(得分:1)
处理这种情况的常用方法是让脚本将其提示写入stderr而不是stdout。