使用命令行工具获取 apache 服务器版本

Get apache server version with command line tools

我使用此命令获取 apache 服务器版本:

apachectl -V | grep -i "Server version" | tr "/" " " | awk '{ print }'

但这并不适用于所有系统。有时我在服务器版本输出之前得到一些其他输出。

AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1. Set the 'ServerName' directive globally to suppress this message

问题是为什么我会得到这个输出,即使 grep 应该过滤掉它?我知道我可以抑制它,但为什么即使我使用 grep 它也会显示?

该消息可能会转到标准错误,而不是标准输出。要隐藏它,请将 stderr 重定向到无处:

apachectl -V 2>/dev/null | grep ...