【问题标题】:Reverse /dev/null反向 /dev/null
【发布时间】:2015-12-04 02:28:39
【问题描述】:

我正在编写一个程序,需要暂时使输出静音。我上网发现解决方法如下:

./program > /dev/null

我现在需要查看输出,但还没有找到这样做的方法。在网上找了之后,我现在明白我基本上在做的是将输出发送到“黑洞”,我相信我需要做的是将程序的输出发送回标准输出。

我试过了:

./program >1
./program >stdout
./program /dev/null>1
./program /dev/null>stdout

但仍然无法让它工作。有人知道可能的解决方案吗?

【问题讨论】:

  • 你试过./program没有>...吗?
  • 是的,我有,但仍然没有打印输出。

标签: linux unix terminal


【解决方案1】:

您无法取回之前的输出。但是只要正常运行程序就会产生输出到stdout...

./program

>('redirection' 操作符)将程序的输出在运行时重定向到目标文件(或流)。您无需在后续运行中“撤消”或“反转”它。 Wikipedia has a great overview.

【讨论】:

  • 感谢您的及时回复。我已经尝试正常运行程序,但没有打印输出。
【解决方案2】:

您已经两次声明您的程序在命令行上没有重定向不会产生任何输出。所以问题是你的程序,而不是重定向。

还要注意:

./program /dev/null>1
./program /dev/null>stdout

您尝试过的这两种方法都将“/dev/null”作为参数传递给您的应用程序并对其应用重定向。

如果你想输出到两个标准输出和使用重定向的文件,你需要一个tee命令。

你会使用类似的东西:

./program | tee mylogfiletxt

'|'是程序的输出和 tee 应用程序的输入之间的管道。 tee 会将其输入的副本发送到标准输出您命名的文件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-04
    • 2017-11-29
    相关资源
    最近更新 更多