将 stderr 发送到 stdout 以进行 grep

将 stderr 发送到 stdout 以进行 grep

这是行不通的,因为所有的 stdio 都会进入 stderr:

webpack -w --ignore=*.js | grep ignore

所以我试试这个:

webpack -w --ignore=*.js > grep ignore 2>&1

但这会将一个名为“grep”的文件写入文件系统哈哈

如何将 stderr 发送到 stdout,以便grep在这种情况下可以使用它?

答案1

如果你想丢弃标准输出并仅匹配单词“ignore”标准错误你可以这样做:

webpack -w --ignore=*.js 2>&1 >/dev/null | grep ignore

这个克隆标准输出标准错误然后重定向标准输出/dev/null, 离开 标准错误通过管道写入。

答案2

啊,我想这就是这么简单:

webpack -w --ignore=*.js 2>&1 | grep "ignore"

相关内容