在shell脚本中检测Apache2的版本

时间:2014-08-17 08:26:31

标签: apache ubuntu debian deb dpkg

我正在创建一个取决于deb的{​​{1}}包。我希望我的软件包适用于所有最新版本的Debian和Ubuntu,因此它应该适用于Apache 2.2和2.4。

检测apache2版本的优雅方法是什么?

apache2

这适用于bash脚本,但当我将其放入我的ISAP22=$(apache2 -v | grep "Apache/2.2") if [ "$ISAP22" ]; then #asssume apache 2.2 else #assume apache 2.4 fi 时,软件包安装失败。

1 个答案:

答案 0 :(得分:0)

我最终使用dpkg--compare-versions

APACHE_VERSION=$(dpkg -l | awk '$2 ~ /apache2(-prefork)?-dev/ { print $3 }')
echo "Found Apache version $APACHE_VERSION"
if dpkg --compare-versions $APACHE_VERSION lt 2.4; then
    echo "Patching config for Apache 2.2"
fi