LinuxParty
NUESTRO SITIO necesita la publicidad para costear hosting y el dominio. Por favor considera deshabilitar tu AdBlock en nuestro sitio. También puedes hacernos una donación entrando en linuxparty.es, en la columna de la derecha.
Hoy me vi en la tarea de buscar una función de WordPress, pero como hacer para no tener que estar revisando cada archivo hasta encontrarla?
Si bien no existe un comando directo (aplicaciones no se) en linux para buscar cadenas de texto, lo podemos hacer mediante los comandos find, xargs y grep de la siguiente forma:
$ find /ruta/donde/buscar/ -name * | xargs grep "cadena a buscar"
Si tuvieras que buscar el contenido en nombres de ficheros que contengan espacios, entonces usa:
find . -iname "*.txt" | awk '{print "\""$0"\""}' | xargs grep "cadena a buscar"
Aunque la sintaxis es bastante clara y podemos ver el manual de cada comando en consola (con man comando) veamos es es lo que quiere decir esto:
- find realiza una lista de los ficheros de la ruta especificada. En este caso va a listar todos, pero si queremos buscar solo archivos de cierta extensión, solo hay que cambiar el asterisco (*) por el tipo de archivo deseado, por ejemplo *.php.
- | pasa la salida del comando anterior al siguiente.
- xargs toma la lista que resulta de find y la va pasando como llamadas consecutivas a grep.
- Y por ultimo, grep busca "cadena a buscar" dentro de los ficheros que le pasa xargs, buscados a su vez por find.
Esta, sería un ejemplo de la ayuda de xargs:
[javier @ localhost ~] $ xargs --help Uso: xargs [OPCIÓN] ... COMANDO [INITIAL-ARGS] ... Ejecute COMMAND con argumentos INITIAL-ARGS y más argumentos leídos de la entrada. Los argumentos obligatorios y opcionales para opciones largas también son obligatorio u opcional para la correspondiente opción corta. -0, --null los elementos están separados por un nulo, no por un espacio en blanco; deshabilita el procesamiento de cotizaciones y barras invertidas y procesamiento lógico de EOF -a, --arg-file=ARCHIVO Leer argumentos de ARCHIVO, no entrada estándar -d, --delimiter=CARACTER Los elementos en el flujo de entrada están separados por CARÁCTER, no por espacios en blanco; deshabilita la cita y la barra invertida procesamiento y procesamiento lógico de EOF -E END Establece la cadena EOF lógica; si END aparece como una línea de entrada, el resto de la entrada se ignora (ignorado si se especificó -0 o -d) -e, --eof [=END] Equivalente a -E END si se especifica END; de lo contrario, no hay una cadena de fin de archivo -I R Igual que --replace=R -i, --replace [=R] Reemplaza R en INITIAL-ARGS con nombres leídos de entrada estándar; si R no está especificado, asumir {} -L, --max-lines=MAX-LINES Use como máximo MAX-LINES líneas de entrada no en blanco por línea de comando -l[MAX-LINES] Similar a -L pero por defecto es como máximo uno que no- línea de entrada en blanco si no se especifica MAX-LINES -n, --max-args=MAX-ARGS Usa como máximo argumentos MAX-ARGS por línea de comando -P, --max-procs=MAX-PROCS Se ejecuta en la mayoría de los procesos MAX-PROCS a la vez -p, --interactivo Pregunta antes de ejecutar comandos --process-slot-var=VAR Establece la variable de entorno VAR en procesos secundarios -r, --no-run-if-empty Si no hay argumentos, entonces no ejecute COMMAND; si no se da esta opción, COMMAND será correr al menos una vez -s, --max-chars=MAX-CHARS Limita la longitud de la línea de comando a MAX-CHARS --show-limits Muestra los límites en la longitud de la línea de comandos -t, --verbose Comandos de impresión antes de ejecutarlos -x, --exit Exit si se excede el tamaño (ver -s) --help Mostrar esta ayuda y salir --version información de la versión de salida y salida
Si te interesan conocer las Expresiones Regulares en Linux, mira nuestro mini-tutorial.
-
Linux
- Renombrar multiples archivos masivamente en Linux (quitar espacios, cambiar mayúsculas) a la vez en Linux
- Linux 6.9 será el primero en superar los 10 millones de objetos Git
- Zorin OS 17.1 lanzado con soporte mejorado para aplicaciones de Windows, edición educativa
- Linux en el Escritorio: ¡Despega en 2024 con un 4% de Cuota!"
- ¿Estás pensando en cambiarte a Linux? 10 cosas que necesitas saber
- Hay una nueva distribución de Linux más genial para 2024
- rlxOS es una distribución de Linux inmutable que demuestra que las apariencias engañan
- Ultramarine Linux Flagship es candidato a escritorio del año
- Linus Torvalds analiza los mantenedores, la IA y el óxido en el kernel
- Cómo instalar y habilitar el completado automático de Bash Linux
- ¿Y si Linus Torvalds hubiera aceptado la oferta de Steve Jobs?
- Optimizar imágenes desde la Terminal Linux
- ¿Quiere una distribución de Linux sencilla, estable y segura? Entonces SpiralLinux es para ti
- Pruebas de rendimiento en servidores VPS, ordenadores de Escritorio o Servidores Linux
- Las 8 mejores distribuciones ligeras de Linux para ordenadores antiguos