我有test.ksh
脚本
我的问题是,是否可以在脚本的第一个脚本中定义所有标准错误将转到/tmp/errlog
文件以便在每个命令之后放置2>/tmp/errlog
等
第二个不建议将./test.ksh 2>/tmp/errlog
置于不相关的选项
利达
答案 0 :(得分:3)
尝试exec 2> /tmp/error.log
。
来自manual:
exec [ -c ] [ -a 名称] [ arg 。 。 。 ]
如果 ARG 给出, 由...指定的命令 执行参数代替这个shell 没有创建新流程。 该 的 -c 选项导致在应用之前清除环境 与...相关的变量赋值 的 EXEC 调用。 该 的 -a 选项 原因 名称 而不是第一个 ARG , 成为
<强>的argv [0] 对于新的过程。 输入/输出参数可能会出现和 影响当前的过程。 如果 ARG 没有给出, 这个命令的作用是 修改文件描述符 由输入/输出重定向列表规定。 在这种情况下, 任何大于2的文件描述符号 在调用时关闭此机制打开 另一个程序。