Como fazer a correspondência exata da extensão de arquivo .en.html com expressão regular ou outra forma no script bash

Como fazer a correspondência exata da extensão de arquivo .en.html com expressão regular ou outra forma no script bash

Estou tentando corresponder o nome do arquivo que termina exatamente com .en.html usando regex como .en.html$ Pois funciona, exemplo z_.en.html, mas não funciona com a.len.html - corresponde a .len.html

Qualquer ajuda?

Responder1

Você precisa escapar do ., que é considerado um curinga na regex:

~$ [[  z_.en.html =~ \.en\.html$ ]] && echo match || echo no_match
match
~$ [[  a.len.html =~ \.en\.html$ ]] && echo match || echo no_match
no_match

Também,https://regex101.com/é muito útil para depurar problemas de regex.

informação relacionada