linux - Bash 仅打印标准错误,而不是标准输出

标签 linux bash

我想对文件进行 lint,并打印 stderr(错误消息),但不打印 stdout(表示文件正常)。

php -l "foo/bar.php"
  • 如果没有错误,它将向标准输出打印“无错误”消息。
  • 如果有错误,它会向 stderr 打印一条详细消息。我只想要这个。

我认为使用 >& 会很神奇,但我一直不明白它们是如何工作的。

我想要的是消耗所有标准输出,保留标准错误。

(对不起,如果这是重复的,但我没有找到任何关于这个的问题)

最佳答案

只需将标准输出发送到 null:

cmd > /dev/null

这会保留标准错误,但会抑制标准输出。

关于linux - Bash 仅打印标准错误,而不是标准输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25331205/

相关文章:

sql - Cronjob 不在 perl 脚本中执行命令行

linux - 带空格的变量问题

c - 如何在 Linux 上使用 C 在执行期间切换用户

linux - 如何更改信息命令的键?

linux - 如何在 wget 中的主机名内跟踪重定向?

linux - 我可以通过X86_64机器码获取内存访问信息吗?

regex - 为什么不能在 bash 正则表达式测试中使用字符串文字?

bash - 限制 wget 可以下载的大小

bash - 如何检测 docker run 和底层守护程序是否以编程方式完全启动?

bash - xxd:如何简单地恢复而不添加 "00000000:"?