0

これはばかげたエラーであることはわかっていますが、まだ解決策を見つけることができました。
Apacheのバージョンを比較する必要があります。Apache のバージョンが 2.4.3 よりも大きい場合、Apache をインストールする前に apr をシステムにインストールする必要があります。
しかし、何らかの理由で、比較で算術エラーが発生します。
基本的に、Apache のバージョンを取得し、それを 2.4.3 と比較する必要
があります。これがテスト スクリプトです。

#!/bin/ksh

version="2.4.4"
echo "$version"

#if [ '2.4.3' == "$version" ] || [ '2.4.3' < "$version" ]
if [ '2.4.3' -gt '$version' ]

then
        print "Mayor or equal"
else
        print "Error"
fi

これは出力です:

2.4.4
./test9.sh[9]: [: 2.4.3: arithmetic syntax error
Error

なぜ比較できないのか知りたいのですが?
ありがとう

4

3 に答える 3

1
if [[ '2.4.3' > "$version" ]]
then
    echo  "Mayor or equal"
else
    echo "Error"
fi
于 2013-10-09T16:21:23.600 に答える
-1

この場合、小数を削除できますが、一般的な解決策ではありません。指定された例でのみ機能し、バージョン 1.10.5 または 2.10 では機能しません...

 [ 244 -gt ${version//./} ] && echo True

非常に堅牢な(そして長い)ものが必要な場合は、コメントにリンクされているソリューションを使用できます。

于 2013-10-09T14:54:34.570 に答える