Sua expressão regular funciona com awk
e GNU awk
compatíveis com POSIX.
Dado que os caracteres e
, i
e n
devem estar presentes de zero a três vezes, mas que não há mais restrições, essa parte pode ser removida do padrão como mount
seguido por nada ou nada combina de qualquer maneira. A ação ( print $0
) sendo também a padrão não precisa ser especificada.
Seu comando pode ser simplificado para:
awk '/mount/'
Se você quiser que o intervalo seja usado, você precisa especificar algo depois dele, aqui está um exemplo:
$ cat input
foo
mountx
mounte
mountee
mounteee
$ /usr/xpg4/bin/awk '/mount[ein]{0,2}$/' input
mounte
mountee
Isso é no Solaris, onde o POSIX awk
está em /usr/xpg4/bin
.
O mesmo comportamento no Mint 17.1 baseado em Debian:
$ awk -V | head -1
GNU Awk 4.0.1
$ awk '/mount[ein]{1,2}$/' input
mounte
mountee
No entanto, parece que mawk
, que reivindica compatibilidade com POSIX, não suporta a expressão de intervalo (chave).
$ mawk -W version
mawk 1.3.3 Nov 1996, Copyright (C) Michael D. Brennan
$ mawk '/mount[ein]{1,2}$/' input
$
Este é um conhecido bug .