stderr和stdout的顺序不同会产生问题

时间:2018-10-19 21:54:35

标签: unix sh ksh aix

在AIX中,当我编写这样的脚本(test.sch)时:

#!/bin/ksh
echo "testing" 2>./r1.log 1>./r2.log
exit 0

如果我执行:

sh -x test.sch

响应为:

cat r1.log
1> ./r2.log
cat r2.log
testing

为什么r1.log出现在命令中?

但是如果我在shell中更改顺序:

#!/bin/ksh
echo "testing" 1>./r2.log 2>./r1.log
exit 0

r1.log文件为空。

cat r1.log
cat r2.log
testing

此代码在其他服务器上也可以正常工作。我必须修复哪些配置才能使其正常工作?

摘要

不能省略-x标志,因为我使用了control -m(使用-x)。但是我意识到该错误发生在不同的AIX服务器中。我猜除了改变输出的顺序,没有解决方案。感谢您的评论!!!

0 个答案:

没有答案
相关问题