texto por palabras palabra linea leer fichero exacta contar comando caracteres cadena buscar archivos printing grep line

printing - por - grep buscar palabra exacta



Obtenga el número de línea mientras usa grep (6)

Los números de línea se imprimen con grep -n :

grep -n pattern file.txt

Para obtener solo el número de línea (sin la línea correspondiente), se puede usar cut :

grep -n pattern file.txt | cut -d : -f 1

Las líneas que no contienen un patrón se imprimen con grep -v :

grep -v pattern file.txt

Estoy utilizando grep recursiva para buscar archivos en una cadena, y todos los archivos coincidentes y las líneas que contienen esa cadena se imprimen en el terminal. Pero, ¿es posible obtener los números de línea de esas líneas también?

ej: actualmente lo que obtengo es /var/www/file.php: $options = "this.target" , pero lo que estoy tratando de obtener es /var/www/file.php: 1142 $options = "this.target"; , bien donde 1142 sería el número de línea que contiene esa cadena.

La sintaxis que estoy usando para grep recursivamente es sudo grep -r ''pattern'' ''/var/www/file.php''

Una pregunta más es, ¿cómo obtenemos resultados para no igual a un patrón? ¿Como todos los archivos pero no los que tienen una cierta cadena?


Para mostrar los resultados con los números de línea, puede intentar esto

grep "word to search for" /path/to/file/file -nr

El resultado debería ser algo como esto:

linenumber: data data data word to search for data data


Si solo quieres el número de línea haz esto:

grep -nr Pattern file.ext | gawk ''{print $1}'' FS=":"

Ejemplo:

$ grep -nr 9780545460262 EXT20130410.txt | gawk ''{print $1}'' FS=":" 48793 52285 54023


grep -nr directorio "cadena de búsqueda"

Esto le da la línea con el número de línea.


grep -A20 -B20 pattern file.txt

Buscar patrón y mostrar 20 líneas antes y después del patrón


grep -nr SEARCHTERM file1 file2 ...