0

我在 shell 中运行以下命令:

sh myscript.sh > test.txt

输出显示在 shell 上。我期待输出将被放入test.txt.

4

2 回答 2

3

输出不显示在外壳上,而是STDERR显示在外壳上。

如果您希望STDOUTSTDERR都被重定向到日志文件,请说:

sh myscript.sh > test.txt 2>&1

由于您已标记问题,您还可以说:

bash myscript.sh >& test.txt
于 2013-10-30T09:42:48.047 回答
1

打印输出可能是标准错误输出。

使用以下,您还可以重定向标准错误(文件描述符2):

sh myscript.sh > test.txt 2>&1

在 bash 中,您还可以使用以下形式:

sh myscript.sh &> test.txt  # This is preferred according to bash(1).

sh myscript.sh >& test.txt
于 2013-10-30T09:42:33.890 回答