108得票5回答
进展报告/日志信息应该放在stderr还是stdout上?

有没有关于进度报告和日志信息(例如“正在执行foo;foo已完成”)应该打印在哪里的官方POSIX、GNU或其他准则?个人而言,我倾向于将它们写入stderr,这样我就可以重定向stdout并仅获取程序的实际输出。最近有人告诉我,这不是一个好的做法,因为进度报告实际上不是错误,只有错误消息应该...

106得票11回答
如何以优雅的方式永远不做任何事情?

我有一个程序,它在stdout上产生有用的信息,但也从stdin读取。我想将其标准输出重定向到一个文件,而不提供任何标准输入。到目前为止,一切都很好:我可以这样做: program > output 不要在tty中做任何事情。 然而,问题是我想在后台执行这个操作。如果我这样做: ...

92得票7回答
我能将一个服务器的标准输出重定向到另一个服务器的标准输入吗?

在一个CentOS服务器上,需要将stdout通过管道传输到另一个CentOS服务器的stdin。这可能吗? 更新: ScottPack、MikeyB和jofel都给出了有效的答案。我选择了Scott的答案,因为即使我的问题没有明确指定安全性作为要求,保持安全性总是件好事。不过,其他两位的...

85得票6回答
我可以配置我的shell以不同颜色打印STDERR和STDOUT吗?

我想设置我的终端,使得stderr和stdout的输出颜色不同,比如红色。这样可以更容易区分两者。 在.bashrc中有没有配置的方法?如果没有,这个是否可能实现? 注意:此问题已与另一个合并,该问题要求将stderr、stdout和用户输入回显以3种不同的颜色输出。答案可能针对任何一...

82得票4回答
立即将Python的stdout写入文件

尝试将Python脚本的stdout写入文本文件(`python script.py > log`)时,命令开始执行时会创建文本文件,但实际内容直到Python脚本结束后才会写入。例如: script.py: import time for i in range(10): prin...

78得票9回答
使用echo命令时如何添加新行

为什么下面的命令在生成的文件中不插入新行,有什么解决办法? $ echo "Line 1\r\nLine2" >> readme.txt $ cat readme.txt Line 1\r\nLine2

78得票7回答
如何欺骗命令,使其认为输出将发送到终端

给定一个在输出到终端时改变行为的命令(例如产生彩色输出),如何在管道中重定向该输出而保留更改后的行为?我不知道是否有这样的实用程序。 一些命令,比如`grep --color=always`,有选项标志来强制改变行为,但问题是如何解决那些仅依赖于测试其输出文件描述符的程序。 如果有关系的话...

73得票5回答
输出文件内容在它们发生变化时。

我想在文件内容发生变化时输出它们,例如,如果我有一个名为foobar的文件,并执行以下命令:magic_command foobar当前终端应该显示文件的内容,并且一直等待,直到我按下^C为止。 然后,如果我从另一个终端执行以下命令:echo asdf >> foobar第一个终端应该显示新...

59得票8回答
如何将标准输出发送到剪贴板?

Unix中是否有以下功能: echo "Some Text" | copy-to-clipboard

53得票3回答
将输出直接导向管道和标准输出

有没有办法将命令的输出导入到stdout并传递给下一个命令?比如,"fortune"命令将幸运饼干打印到stdout并将其传递给下一个命令。 $ fortune | tee >(?stdout?) | pbcopy "...Unix, MS-DOS, and Windows NT (...