Python输出重定向

时间:2018-09-10 12:51:31

标签: python linux io

当我在Linux计算机上运行python3解释器并尝试将其stdout重定向到这样的文件时,什么也没发生:

user@workmachine:~$ python3 > python.txt
Python 3.5.2 (default, Nov 23 2017, 16:37:01) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
\>>>

文件python.txt在解释器运行时以及关闭后保持为空。它的所有输出仍在终端中。

另一方面,如果我要重定向R解释器 以同样的方式(R > R.txt)达到预期的效果(所有输出都重定向到文件,在终端上看不到任何内容)。

有什么区别? python将所有输出都写到stdout之外的另一个流中吗?

1 个答案:

答案 0 :(得分:2)

对于您而言,似乎python将信息发送到STDERR而不是STDOUT。因此,您应该使用重定向,例如:

user@workmachine:~$ python3 2> python.txt