条件付き正規表現エラー

条件付き正規表現エラー
string=123456

if [ $string == 123456 ]; then
echo 123
fi

これはうまくいきますが、==を=~に変更すると、次のエラーが発生します。

./test: line 3: [: =~: binary operator expected

ベストアンサー1

吹く~の正規表現一致は二重括弧内でのみ機能します[[ ... ]]

string=123456
if [[ "$string" =~ 123456 ]]; then echo 123; fi
123

おすすめ記事