TCSH:我想显示命令输出并重定向到文件

TCSH:我想显示命令输出并重定向到文件

我查看了 TSCH 手册页,其中显示“输出文件或错误文件都可以是‘/dev/tty’以将输出发送到终端”。因此,如果我可以重定向到两个不同的位置,那就可以了。但是打电话来说,

(make foo > /dev/tty) > error.txt留给我一个空的error.txt。正如make foo | tee error.txt

答案1

你需要做:

 (command > stdout) >& stderr

例如:

 (make foo > /dev/tty) >& error.txt

第一个>将 stdout 重定向到 tty,然后>&将剩下的内容重定向到 error.txt。

在你的情况下,它会像这样:

~> (make foo > /dev/tty) >& error.txt
~> cat error.txt
make: *** No rule to make target `foo'.  Stop.

如果你想两个都显示它,将其写入文件,|&类似于>&,即:

~> ( python err.py > /dev/tty ) |& tee error.txt
This is stdout
This is stderr
~> cat error.txt
This is stderr

相关内容