3

我有一个同时吐出标准错误和标准输出的程序,我想在标准错误上少运行我的寻呼机,但忽略标准输出。我怎么做?

更新:

就是这样......我不想失去标准输出......只是让它远离寻呼机

program 2>&1 >log | less

然后稍后

less log
4

1 回答 1

4

您可以尝试将标准输出重定向到 /dev/null,但将标准错误重定向到标准输出过去的位置。

ksh/bash 中的示例:

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

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

于 2008-09-15T04:56:32.283 回答