Linux重定向;可以在重定向之间切换?

时间:2010-10-06 13:17:26

标签: linux redirect

我希望能够在重定向之间切换。即:

重定向#1将是: 不要重定向到stdout,将输出重定向到文件。

重定向#2将是: 不要重定向到文件...而是重定向到stdout

是否可以在运行时执行此操作?

3 个答案:

答案 0 :(得分:6)

这里适用于bash(对于C来说它会非常相似):

#!/bin/bash

echo begin experiment

exec 3>&1-

exec > to_file

echo this goes to file
echo another line to file

exec 1>&3-

echo this goes again to stdout

答案 1 :(得分:0)

您可以使用

从bash脚本内部重定向(因此决定不是调用者)

exec>文件

exec> $(tty)

答案 2 :(得分:0)

作为准中世纪替代方案,您可以安装Konsole或其他一些终端,让您将输出保存到文件中。您可以在终端上运行应用程序(运行时)时随时保存输出。

在Konsole上,您可以点击: Scrollback>保存输出

你没有具体说过你在寻找编程解决方案,所以我相信这个想法是有效的。