我看过这个问题。
它说我们可以复制stdin和stdout的文件描述符,以便在程序的后期重新打开它们。
我的问题:
- 我们可以在O_WRONLY模式下打开文件"/dev/tty"以重新打开stdout吗
- 这是正确的方法吗
- 有没有类似的方法可以重新打开stdin和stderr
不,您提出的方法不是正确的方法。/dev/tty
"设备"是您的终端设备,它不一定能容纳标准输出。
例如,如果您将程序运行为:
yourprog >output.txt
那么打开CCD_ 2将而不是获得您的起始标准输出(即output.txt
文件)。