让我们考虑一下shell脚本中有许多系统命令,每个命令都向stdout或stderr返回一些内容。
有没有办法将shell脚本生成的所有stdout或stderr重定向到日志文件,而不是分别为每个命令执行重定向?
发布于 2012-11-06 15:55:38
显然简单的解决方案是使用
./scriptfile.sh > foo.log因此,生成的所有不带脚本文件的标准输出都会被发送到foo.log
然而,我猜你的问题是直接针对一个解决方案的,这个解决方案是从脚本开始工作的。您可以使用exec命令将文件描述符重定向到给定文件(以下代码片断中的第2行会将标准输出重定向到foo.log):
#!/bin/sh
exec 1>>foo.log
echo blue
echo blarthttps://stackoverflow.com/questions/13246593
复制相似问题