将一个命令的标准错误重定向到另一命令的标准输入

将一个命令的标准错误重定向到另一命令的标准输入

我希望将一个命令的标准错误重定向到另一个命令的标准输入,例如

g++ filename.cpp 'redirection' less

答案1

您可以使用管道来做到这一点

command1 2>&1 >/dev/null | command2

它将第一个命令的标准错误流重定向到第二个命令的标准输入流,同时丢弃 的标准输出流command1

重定向按顺序完成:

  1. command1 2>&1将文件描述符 2(标准错误)重定向到文件描述符 1(标准输出)所连接的位置。

  2. >/dev/null(与 相同1>/dev/null)会将标准输出重定向到/dev/null.

在你的情况下:

g++ filename.cpp 2>&1 >/dev/null | less

相关内容