我的sysadmin创建了一个bash脚本,其中的第一个命令是将输出重定向到日志文件中:
exec > my_app.log
有了这个,我有以下几点:
stdout
重定向到my_app.log
stderr
当我手动执行脚本时,我想要以下所有内容:
stdout
重定向到my_app.log
stderr
重定向到my_app.err
stdout
stderr
我需要更改为exec才能完成所有这些工作?
目前我所做的是打开3个终端。
./my_script.sh 2> my_app.err
tail -f my_app.log
tail -f my_app.err
我认为这太过分了。
答案 0 :(得分:1)
请查看以下link,其中此问题已得到解答。阅读tee
的手册页了解更多详情。
答案 1 :(得分:1)
echo "hello" | tee file.txt
从echo "hello"
输出到文件和stdout
如果你需要stderr和stdout,那么echo "hello" 2>&1 | tee file.txt