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


14

Eu quero saber se ack_enabled not definedestá presente em um arquivo específico all_defs.txte retornar algo, pelo qual eu possa entender se a string está presente ou não.

Alguém pode me dizer como fazer isso?

Respostas:


19

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

if ! grep -q 'ack_enabled not defined' all_defs.txt ; then
    echo Not found.
fi

7

Mais vebose one-liner

O one-liner a seguir é ainda mais detalhado:

grep -q 'ack_enabled not defined' all_defs.txt && echo 'string found' || echo 'string not found'
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.