GNU/Linux >> Tutoriales Linux >  >> Linux

grep:comando no encontrado

El comando grep, en su forma más básica, es una herramienta de búsqueda. A diferencia de buscar o localizar, no se limita a encontrar nombres de archivos; se usa con mayor frecuencia para buscar en el contenido de un archivo una cadena de texto en particular. Como salida, grep muestra cada línea completa del archivo en el que se encontró su patrón de búsqueda. De esta manera, puede usar grep para procesar un archivo de texto y leer los contenidos que sean más pertinentes para usted. Por ejemplo, es posible que desee auditar los eventos de inicio de sesión de un usuario consultando un registro de acceso. En lugar de leer todo el registro o recorrer un término de búsqueda en un editor de texto, simplemente puede imprimir todas las líneas relevantes en la pantalla con el comando grep.

Sintaxis

La sintaxis del comando grep es:

# grep [options] {search pattern} {file names}

Uso de grep para buscar archivos

Además de buscar el contenido de los archivos, puede usar grep para buscar en un directorio con el fin de localizar un archivo determinado. El ls-l | El comando grep audit devuelve una lista larga de cualquier archivo en el directorio actual cuyo nombre contenga "auditoría".

Si desea invertir la búsqueda (líneas de salida que no coinciden con el patrón), use el parámetro -v:

$ grep -v t file1
one
four
five
$

Si necesita encontrar los números de línea donde se encuentran los patrones coincidentes, use el parámetro -n:

$ grep -n t file1
2:two
3:three
$

Si solo necesita ver un recuento de cuántas líneas contienen el patrón coincidente, use el parámetro -c:

$ grep -c t file1
2
$

Si necesita especificar más de un patrón coincidente, use el parámetro -e para especificar cada patrón individual:

$ grep -e t -e f file1
two
three
four
five
$

Si encuentra el siguiente error mientras ejecuta el comando grep:

grep: command not found

puede intentar instalar el siguiente paquete según su elección de distribución:

Distribución del sistema operativo Comando
OS X instalar cerveza grep
Debian apt-get install grep
Ubuntu apt-get install grep
Alpino apk agregar grep
Arco Linux pacman -S grep
Kali Linux apt-get install grep
Cent OS yum instalar grep
Fedora dnf instala grep
Raspbian apt-get install grep

Ejemplos de comandos grep

1. Para interpretar PATRÓN como una expresión regular extendida:

# grep --extended-regexp PATTERN
# grep -E PATTERN 

2. Para interpretar PATRÓN como una lista de cadenas fijas:

# grep -F PATTERN
# grep --fixed-strings PATTERN 

3. Para interpretar PATRÓN como una expresión regular básica:

# grep -G PATTERN
# grep --basic-regexp PATTERN 

4. Para interpretar PATTERN como una expresión regular de Perl:

# grep -P PATTERN
# grep --perl-regexp PATTERN 

5. Para usar PATRÓN como patrón:

# grep -e PATTERN, 
# grep --regexp=PATTERN 

6. Para obtener patrones de ARCHIVO, uno por línea:

# grep -f FILE, --file=FILE

7. Para ignorar las distinciones entre mayúsculas y minúsculas tanto en el PATRÓN como en los archivos de entrada:

# grep -i PATTERN
# grep --ignore-case PATTERN

8. Para invertir el sentido de coincidencia, para seleccionar líneas que no coincidan:

# grep -v PATTERN
# grep --invert-match PATTERN 

9. Para seleccionar solo aquellas líneas que contengan coincidencias que formen palabras completas:

# grep -w PATTERN
# grep --word-regexp PATTERN

10. Para seleccionar solo aquellas coincidencias que coincidan exactamente con toda la línea:

# grep -x PATTERN
# grep --line-regexp PATTERN 

11. Para ignorar el caso:

# grep -y PATTERN 

12. Para suprimir la salida normal; en su lugar, imprima un recuento de líneas coincidentes:

# grep -c PATTERN
# grep --count PATTERN 

13. Para mostrar en color:

# grep --color PATTERN 

14. Para suprimir la salida normal; en su lugar, imprima el nombre de cada archivo de entrada, desde fuera no se esperará:

# grep -L
# grep --files-without-match 

15. Para suprimir la salida normal; en su lugar, imprima el nombre de cada archivo de entrada desde el que se imprimió la salida:

# grep -l
# grep --files-with-matches 

16. A la quietud; no escriba nada en la salida estándar Salga inmediatamente con estado cero si se encuentra alguna coincidencia:

# grep -q 
# grep --quiet
# grep --silent 

17. Para dejar de leer un archivo después de NUM líneas coincidentes:

# grep -m NUM
# grep --max-count=NUM 

18. Para imprimir solo las partes coincidentes (no vacías) de una línea coincidente:

# grep -o PATTERN
# grep --only-matching PATTERN 

19. Para suprimir mensajes de error sobre archivos inexistentes o ilegibles:

# grep -s PATTERN
# grep --no-messages PATTERN 

20. Para imprimir el desplazamiento de bytes basado en 0 dentro del archivo de entrada antes de cada línea de salida:

# grep -b PATTERN
# grep --byte-offset PATTERN 

21. Para imprimir el nombre del archivo para cada coincidencia:

# grep -H PATTERN
# grep --with-filename PATTERN

22. Para suprimir los prefijos de nombres de archivo en la salida:

# grep -h PATTERN
# grep --no-filename PATTERN 

23. Para mostrar la entrada que realmente proviene de la entrada estándar como entrada proveniente del archivo LABEL:

# grep -cd PATTERN | grep --label=mysearch -H PATTERN 

24. Para prefijar cada línea de salida con el número de línea basado en 1 dentro de su archivo de entrada:

# grep -n PATTERN
# grep --line-number PATTERN 

25. Para asegurarse de que el primer carácter del contenido real de la línea esté en una tabulación:

# grep -T PATTERN
# grep --initial-tab PATTERN 

26. Para reportar compensaciones de bytes estilo Unix:

# grep -u PATTERN
# grep --unix-byte-offsets PATTERN 

27. Para generar un byte cero en lugar del carácter que normalmente sigue a un nombre de archivo:

# grep -Z PATTERN
# grep --null PATTERN

28. Para imprimir NUM líneas de contexto final después de las líneas coincidentes:

# grep -A NUM PATTERN
# grep --after-context=NUM PATTERN 

29. Para imprimir NUM líneas de contexto inicial antes de las líneas coincidentes:

# grep -B NUM PATTERN
# grep --before-context=NUM PATTERN 

30. Para imprimir NUM líneas de contexto de salida:

# grep -C NUM PATTERN
# grep --context=NUM PATTERN 

31. Para procesar un archivo binario como si fuera texto:

# grep -a PATTERN /tmp/bin
# grep -text PATTERN /tmp/bin 

32. Suponer que el archivo es de tipo TYPE:

# grep --binary-files=TYPE PATTERN 

33. Para Si un archivo de entrada es un dispositivo, FIFO o socket, use ACCIÓN para procesarlo:

# grep -D ACTION PATTERN
# grep --devices=ACTION PATTERN 

34. Para Si un archivo de entrada es un directorio, use ACCIÓN para procesarlo:

# grep -d ACTION PATTERN
# grep --directories=ACTION PATTERN 

35. Para omitir archivos cuyo nombre base coincida con GLOB:

# grep --exclude=GLOB PATTERN 

36. Para omitir archivos cuyo nombre base coincida con cualquiera de los globos de nombre de archivo leídos de ARCHIVO:

# grep --exclude-from=FILE PATTERN 

37. Para excluir directorios que coincidan con el patrón DIR de búsquedas recursivas:

# grep --exclude-dir=DIR PATTERN

38. Para procesar un archivo binario como si no contuviera datos coincidentes:

# grep -I PATTERN

39. Para buscar solo archivos cuyo nombre base coincida con GLOB:

# grep --include=GLOB 

40. Para leer todos los archivos de cada directorio, recursivamente:

# grep -r PATTERN
# grep -R PATTERN 

41. Para usar el búfer de línea en la salida:

# grep --line-buffered PATTERN 

42. Si es posible, use la llamada del sistema mmap para leer la entrada, en lugar de la lectura predeterminada:

# grep --mmap PATTERN 

43. Para tratar los archivos como binarios:

# grep -U /tmp/file PATTERN
# grep --binary /tmp/file PATTERN 

44. Para tratar la entrada como un conjunto de líneas:

# grep -z PATTERN
# grep --null-data PATTERN 

45. Para mostrar la ayuda:

# grep -h 

46. ​​Para imprimir el número de versión del grep:

# grep -V 


Linux
  1. ifrename:comando no encontrado

  2. netstat:comando no encontrado

  3. kubectl:comando no encontrado

  4. tvservice:comando no encontrado

  5. lspci:comando no encontrado

aws-shell:comando no encontrado

dpkg:comando no encontrado

id:comando no encontrado

w:comando no encontrado

df:comando no encontrado

du:comando no encontrado