Dados de amostra (queremos que todas as linhas que contêm " querem "):
$ cat x
not this
want this
not that
want that
Você pode usar awk
:
- Imprimir um
1
se a linha corresponder a regex/want/
- Imprimir um
0
se a linha não corresponder a
$ cat x | awk '{if(match($0,/want/)){print 1}else{print 0}}'
0
1
0
1
Ou tente sed
:
- Substitua as linhas que contêm apenas
1
com0
(caso contrário, elas passarão como1
) - Substitua as linhas que contêm " deseja " por
1
- Substitua as linhas que não são
1
por0
$ cat x | sed -re 's/^1$/0/' -e 's/^.*want.*$/1/' -e 's/^[^1][^$].*$/0/'
0
1
0
1