bash スクリプトの [[: not found エラーの解決策]
bash スクリプトを作成するときに、[[: not found
] のようなエラー メッセージが表示されることがあります。このエラーは通常、スクリプト内で角かっこ内の条件式が使用されていることが原因で発生しますが、システムの bash バージョンはこの構文をサポートしていません。
デフォルト設定では、ほとんどの Linux システムで GNU bash が使用され、 [[ $variable == "value" ]]
などの角括弧内の条件式がサポートされます。ただし、場合によっては、エラー メッセージ [[: not found
が表示されることがあります。これは、システムの bash バージョンがこの構文をサポートしていないことを意味します。
この問題を解決するには、次の方法を実行できます。
bash --version を実行します。
コマンド、システムで使用されている bash のバージョンを確認します。バージョン番号がそれより低い場合、角括弧内の条件式構文はサポートされない可能性があります。 [[
と ]]
を [
と ]
に置き換えます。の bash バージョンは および
]] をサポートしていません。これらのシンボルを
[ および
] に置き換えることができます。より一般的で互換性の高い条件式構文。たとえば、
[[ $variable == "value" ]] を
[ "$variable" = "value" ] に置き換えます。
の代わりに
/bin/bash を使用します。
スクリプトの先頭で、スクリプトで使用される bash インタープリターのパスを指定します。これにより、スクリプトは実行時にシステムのデフォルトのシェルではなく bash を使用するようになります。
[[: not found エラーが発生する場合、システムの bash バージョンが条件式構文をサポートしていないことが原因である可能性があります。角括弧が原因です。この問題を解決するには、bash バージョンを確認し、角かっこ内の条件式を置き換えるか、
/bin/bash を使用してスクリプトを実行するか、bash バージョンを更新します。これらの方法により、スクリプトをさまざまなバージョンの bash で通常どおり実行できるようになります。
以上がbash スクリプトで [[:not found エラーを解決する方法]の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。