====== grep ====== Búsqueda dentro de ficheros ===== Coincidencia exacta ===== Si hacemos: grep 25 fichero Buscará todo lo que contenga 25. Pero si queremos buscar exactamente 25, sin nada a su alrededor, empleamos la opción ''-w'': grep -w 25 fichero La opción ''-w'' hace que se busquen palabras. Para ''grep'' una palabra son letras, dígitos y el guión bajo (''_''). Si tenemos lo siguiente: La ip y puerto es 127.0.0.1:4225 El puerto que utiliza el servidor de correo es el 25 ''grep -w 25'' coincidiría con la segunda línea, pero no con la primera. ===== Excluir ficheros ===== Buscar recursivamente el texto ''texto'' desde el directorio actual sin mirar en los ficheros con extensión ''.csv'' ni ''.json'' grep texto --exclude=\*.csv --exclude=\*.json Ese uso de patrones en los argumentos de ''grep'' se conoce como sintaxis [[https://man7.org/linux/man-pages/man7/glob.7.html|glob]] ===== Incluir ficheros ===== Buscar solamente en un determinado tipo de archivos: grep -r texto --include=\*.txt Se puede indicar más de un tipo de archivo añadiendo más opciones ''include'': grep -r texto --include=\*.txt --include=\*.csv --include=\*.json ===== Mostrar solo el nombre de los ficheros que contienen coincidencias ===== Opción ''-l'': grep -l texto ===== Mostrar líneas antes y después de una coincidencia ===== Si queremos mostrar las líneas antes y después de la coincidencia: grep -B 5 -A 2 --color 'palabra' /ruta/fichero/busqueda.ext El comando anterior mostrará las 5 líneas anteriores (''B'', //before//) a la coincidencia de ''palabra'' y las 2 líneas siguientes (''A'', //after//) La opción ''%%--%%color'' es para que resalte la coincidencia.