GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo encontrar archivos que contengan dos cadenas juntas en Linux?

grep -l string2 `grep -l string1 /path/*`

que es lo mismo que

grep -l string2 $(grep -l string1 /path/*)

Editar:he aquí por qué grep string1 /path/* | grep string2 no hace lo que creo que quiere alwbtc.

$ cd /tmp
$ cat a
apples
oranges
bananas
$ cat b
apples
mangoes
lemons
$ cat c
mangoes
limes
pears
$ cd ~
$ grep apples /tmp/* | grep mangoes
$

No se encontró nada, pero el archivo b contiene ambas cadenas.

Esto es lo que creo que quiere alwbtc

$ grep -l apples $(grep -l mangoes /tmp/*)
/tmp/b

Canaliza uno grep en otro:

grep "string1" /path/to/files/* | grep "string2"


Linux
  1. Cómo encontrar archivos modificados recientes o de hoy en Linux

  2. Cómo usar el comando Grep para buscar texto en archivos

  3. Cómo unir dos archivos de texto en Linux

  4. ¿Cómo encontrar archivos de texto que no contengan texto en Linux?

  5. ¿Cómo encuentro todos los archivos que contienen texto específico en Linux?

Cómo encontrar archivos según sus permisos en Linux

Cómo mostrar dos archivos uno al lado del otro en Linux

Cómo encontrar archivos basados ​​en la marca de tiempo en Linux

Cómo encontrar archivos que contengan una cadena de texto específica en Linux

Cómo comparar dos archivos en la terminal de Linux

Encuentra texto en archivos en Linux usando grep