如何仅在错误输出上使用寻呼机(更多/更少)

时间:2020-03-05 18:53:09  来源:igfitidea点击:

我有一个程序会同时发出标准错误和标准输出,并且我想减少对标准错误的运行,但是忽略标准输出。我怎么做?

更新:

就这样...我不想丢失标准输出...只是将其保留在寻呼机之外

program 2>&1 >log | less

然后再

less log

解决方案

回答

我们可以尝试将标准输出重定向到/ dev / null,但是将标准错误重定向到以前使用标准输出的位置。

ksh / bash中的示例:

program 2>&1 >/dev/null | less

在这里,重定向2>&1将文件描述符2(stderr)设置为指向与文件描述符1(stdout)相同的流,在重定向> / dev / null之前进行评估,重定向将文件描述符1设置为指向/ dev /空值。结果是我们写入stderr的内容将发送到stdout,而我们写入stdout的内容将被丢弃。