awk '/patterna/ || /patternb/ { print > "patternapatternb.txt" }
/patternc/ || /patternd/ { print > "patterncpatternd.txt" }
# ... more rules following same scheme; replace with real patterns ...
/patterny/ || /patternz/ { print > "patternypatternz.txt" }' inputfile
Coloque o código em um arquivo script.awk e chame com awk -f script.awk inputfile . Ou então, faça uma linha de comando de várias linhas como acima. No shell GNU Bash, uma nova linha pode ser inserida usando Ctrl + V Ctrl + J *
Há apenas um loop (o loop de processamento de registro implícito realizado por awk ). Apenas uma passagem pelo arquivo é necessária.
* Você pode usar Enter para adicionar uma nova linha entre aspas apenas quando adicionar novos caracteres no final da linha e uma cotação aberta estiver pendente.