Vamos fazer algumas malabarismos com a opção grep
:
Você pode usar grep
para todas as linhas do seu arquivo de frutas, exceto para aquelas no seu arquivo de lista com números a serem excluídos:
grep -v -x -f numbers fruits
( -f
para fornecer um arquivo padrão, -x
para evitar correspondências parciais e -v
para inverter a correspondência)
Infelizmente, os números e as frutas estão em linhas separadas, então as frutas sobrevivem ao grep. Vamos nos livrar deles com um padrão -e
adicional:
grep -v -x -e "[a-z]*" -f numbers fruits
Agora, todas as linhas que consistem em apenas letras são removidas, portanto, não há mais frutas, nem mesmo as desejadas. Mas podemos recuperá-los do contexto:
grep -v -x -A1 -e "[a-z]*" -f numbers fruits
( -A1
dá uma linha adicional após cada partida) finalmente dá o que você queria.