.en.html$のような正規表現を使用して、.en.htmlで終わるファイル名を正確に一致させようとしています。たとえばz_.en.htmlは機能しますが、a.len.htmlでは機能しません。.len.htmlと一致します。
何か助けて?
答え1
.
正規表現ではワイルドカードとみなされる をエスケープする必要があります。
~$ [[ z_.en.html =~ \.en\.html$ ]] && echo match || echo no_match
match
~$ [[ a.len.html =~ \.en\.html$ ]] && echo match || echo no_match
no_match
また、出典:https://regex101.com/正規表現の問題をデバッグするのに非常に役立ちます。