Como usar o grep no Linux para relatar detalhadamente se uma string está presente em um arquivo?

14

Eu quero saber se ack_enabled not defined está presente em um determinado arquivo all_defs.txt e retornar algo, com o qual eu posso entender se a string está presente ou não.

Alguém pode me dizer como fazer isso?

    
por RoyOneMillion 27.09.2013 / 09:22

2 respostas

18

Basta verificar o código de saída de grep . -q torna silencioso, ! nega o código de saída:

if ! grep -q 'ack_enabled not defined' all_defs.txt ; then
    echo Not found.
fi
    
por 27.09.2013 / 09:28
7

Mais um-liner de vebose

O seguinte one-liner é ainda mais detalhado:

grep -q 'ack_enabled not defined' all_defs.txt && echo 'string found' || echo 'string not found'
    
por 09.05.2014 / 16:44

Tags