¿Cómo usar grep en Linux para informar de manera detallada si una cadena está presente en un archivo?


14

Quiero saber si ack_enabled not definedestá presente en un archivo en particular all_defs.txty devolver algo, por lo que puedo entender si la cadena está presente o no.

¿Puede alguien decirme cómo hacer esto?

Respuestas:


19

Simplemente verifique el código de salida de grep. -qlo hace silencioso, !niega el código de salida:

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

7

Más vebose one-liner

El siguiente one-liner es aún más detallado:

grep -q 'ack_enabled not defined' all_defs.txt && echo 'string found' || echo 'string not found'
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.