Casandra nodetoolを実行しようとしていますが、.shスクリプトから警告が表示されます。
[root@d11ca4cc-fa95-c8a9-e133-e64c434f0e6f ~]# nodetool status
/opt/local/share/cassandra/bin/nodetool[53]: .[97]: [: <: unknown operator
/opt/local/share/cassandra/bin/nodetool[53]: .[102]: [: <: unknown operator
prtconf: devinfo facility not available
/opt/local/share/cassandra/bin/nodetool[53]: .[222]: [: <: unknown operator
53行目で、nodetoolはcassandra-env.shを呼び出しています。
Cassandra-env.sh(97、102、222行目):
...
97 if [ "$JVM_VERSION" \< "1.7" ] ; then
...
if [ "$JVM_VERSION" \< "1.8" ] && [ "$JVM_PATCH_VERSION" -lt "25" ] ; then
...
if { [ "$JVM_VERSION" \> "1.7" ] && [ "$JVM_VERSION" \< "1.8.0" ] && [ "$JVM_PATCH_VERSION" -ge "60" ]; } || [ "$JVM_VERSION" \> "1.8" ] ; then
...
問題がどこにあるのかわかりませんが、演算子\>
または\<
が認識されていないように見えます。何かアドバイスはありますか?
使用するSolarisシステムはありませんが、スクリプトは/ bin/shが/ bin/bashへのリンクであることに依存しているため、shが理解できないbash構文を使用しているようです。
Shebangを#!/ bin/bashに変更すると、問題が解決することがわかりました。
バグレポートを提出する必要があります。うまくいけば、メンテナはそれをLinux中心ではないように修正します。