8.8 C
Madrid
sábado, noviembre 8, 2025
spot_img
spot_img

Cómo buscar en la terminal de Linux y encontrar cualquier cosa rápidamente

La terminal es buena para ejecutar tareas, y una de las tareas que creo que es más rápido de realizar en la terminal en motivo de en la interfaz gráfica de legatario es la búsqueda basada en terminal. Al utilizar varios comandos de Linux, puede encontrar cualquier cosa realizable y rápidamente sin tener que despabilarse en archivos y carpetas en un administrador de archivos GUI. Exploremos cómo puede despabilarse en la terminal de Linux y encontrar lo que esté buscando.

Agenciárselas texto en archivos con grep

Si solo aprende un comando de búsqueda, hágalo grep. El nombre significa General Regular Expression Print y su trabajo es simple: despabilarse interiormente de archivos patrones de texto específicos. Está instalado de forma predeterminada en la mayoría de los sistemas Linux (y macOS).

La sintaxis es simple, solo necesita usar grep próximo con el patrón de búsqueda deseado. Por ejemplo, digamos que estás intentando encontrar cada ringlera que menciona un error en un archivo. Puedes hacerlo con:

grep "error" fileserver.log

Imprime cada ringlera que contiene la palabra error. Si desea que ignore mayúsculas y minúsculas (para que coincida con Error, ERROR, etc.), simplemente agregue el -i bandera así:

grep -i "error" fileserver.log

Si no está seguro de dónde está el archivo y desea despabilarse en un directorio completo, utilice el -r opción (recursiva):

grep -r "TODO"
Búsqueda de palabras específicas usando Grep

Esto revisa todos los archivos de la carpeta flagrante y todas las subcarpetas, buscando la palabra «TODO».

A veces quieres ver todo excepto el término de búsqueda. El -v flag invierte la búsqueda y muestra solo las líneas que no coinciden. Esto es increíble para filtrar el ruido de los archivos de registro.

grep -v "DEBUG" app.log

Esto me muestra todo lo que no es un mensaje de depuración.

Combinando grep con otros comandos

Todavía puedes combinar grep con otros comandos. Por ejemplo, puede canalizar (usando el | símbolo) la salida de un comando directamente a otro. Esto le permite encadenar comandos. Digamos que desea ver todos los procesos SSH ejecutándose en su sistema. Puedes enumerar todos los procesos y luego canalizar esa letanía cíclope a grep usando esto:

ps aux | grep "ssh"
Listado de procesos y filtrado mediante Grep

El ps aux El comando puede enumerar 300 procesos, pero grep lo filtra hasta uno o dos que efectivamente le interesan. Puedes usar esto para cualquier cosa.

LEER  Cómo solucionar el problema de "sin candidato de instalación" en Ubuntu

grep igualmente admite expresiones regulares, para patrones más avanzados. Puedes despabilarse cosas como cualquier ringlera que comience con un número, o direcciones de correo electrónico o números de teléfono en un formato específico. Por ejemplo, para despabilarse líneas que comiencen con un número, use esto:

grep "^(0-9)" file.txt

La curva de formación se vuelve más pronunciada aquí, pero la premio es enorme.

grep vs ripgrep: cuál es la diferencia y cuál usar

Ya sabes lo útil que es grep para despabilarse texto interiormente de archivos, pero existe una alternativa más rápida y moderna citación ripgrep (rg). Funciona casi de la misma modo que grep pero proporciona un rendimiento mucho mejor y configuraciones predeterminadas más convenientes.

La principal diferencia es la velocidad. Mientras que grep procesa archivos de forma secuencial, ripgrep incluye optimizaciones (incluidos subprocesos múltiples y omisión de archivos irrelevantes) que a menudo lo hacen mucho más rápido. En proyectos grandes, una búsqueda que puede tardar 30 segundos en grep puede finalizar en menos de uno con ripgrep. Está escrito en Rust y optimizado para manejar directorios grandes de modo válido.

A diferencia de grep, ripgrep no está instalado de forma predeterminada. Debe instalarlo en su sistema usando su administrador de paquetes. Por ejemplo, en Ubuntu/Debian, use esto:

sudo apt install ripgrep

Una vez instalado, lo usarás casi exactamente como grep:

rg "TODO"
Buscar y encontrar palabras específicas usando Ripgrep

Este comando escudriñamiento todos los archivos en la carpeta flagrante y sus subcarpetas. ripgrep omite automáticamente archivos ocultos, directorios .git y archivos binarios, para que solo vea resultados relevantes. Todavía muestra números de ringlera y resaltados de colores de forma predeterminada.

En epítome, ambas herramientas hacen el mismo trabajo, pero ripgrep es más rápido y conveniente para el uso diario, especialmente cuando se buscan proyectos grandes. Sin confiscación, grep sigue siendo útil cuando estás en sistemas donde no puedes instalar software nuevo o cuando necesitas una útil que esté habitable en todas partes de forma predeterminada.

LEER  Las mejores computadoras portátiles para juegos desde ₹ 56990 de HP, Dell, Lenovo, ASUS, Acer en Amazon Diwali Sale 2025, principales ofertas cubiertas

Encontrar archivos y directorios con despabilarse

Mientras que grep te ayuda a despabilarse interiormente de los archivos, el comando de búsqueda te ayuda a encontrar los archivos y carpetas. Es la útil que debes usar cuando sabes el nombre o tipo de lo que estás buscando, pero no dónde está almacenado. Puede despabilarse por nombre, tamaño, hora de modificación, permisos, tipo de archivo y prácticamente cualquier atributo que se le ocurra.

La sintaxis básica se ve así:

find /path -name "filename"

Este comando le indica a Find que comience a despabilarse desde la ruta indicada y busque archivos que coincidan con el nombre especificado. Por ejemplo, si está intentando encontrar un archivo de configuración faltante, ejecute:

find /etc -name "config.json"

Por defecto, -name distingue entre mayúsculas y minúsculas. Si no está seguro acerca de las mayúsculas, cambie a -iname para una búsqueda que no distinga entre mayúsculas y minúsculas:

find . -iname "readme.md"

El punto (.) significa comenzar en el directorio flagrante. find puede hacer mucho más que solo búsquedas basadas en nombres. Puede filtrar los resultados según cuándo se modificaron los archivos por última vez, lo cual resulta útil al estafar registros o copias de seguridad. Por ejemplo, este comando enumera todos los archivos de registro modificados en los últimos tres días:

find /var/log -name "*.log" -mtime -3

El asterisco actúa como comodín y coincide con cualquier carácter. Todavía puedes usarlo para rastrear archivos grandes que podrían estar ocupando tu espacio en disco.

Búsqueda interactiva con fzf

fzf significa buscador difuso y es básicamente una útil de búsqueda interactiva para tu terminal. Es un filtro difuso al que puedes canalizar cosas. Le brinda una mostrador de búsqueda de salida ultrarrápida a medida que escribe para cualquier letanía. Siquiera es necesario que sea preciso; si escudriñamiento «react_component.js», simplemente escriba rctjs y fzf entenderá lo que quieres sostener.

Para usarlo, debe instalarlo en su sistema usando su administrador de paquetes. En Ubuntu/Debian, ejecuta esto:

sudo apt install fzf

Una vez instalado, la forma más sencilla de utilizar fzf es simplemente escribiendo:

fzf
Encontrar archivos usando la herramienta Fzf

Obtendrá instantáneamente una letanía de archivos con capacidad de búsqueda en su carpeta flagrante. A medida que escribe, filtra los resultados en tiempo verdadero. Puede navegar con las teclas de flecha y presionar Enter para separar una.

LEER  7 métodos de optimización de Windows que hacen más daño que bien

Todavía puedes combinarlo con despabilarse. Por ejemplo:

find . -type f | fzf

Eso le permitirá nominar un archivo de forma interactiva de la letanía que genera la búsqueda.

Incluso puedes usarlo para despabilarse en tu historial de comandos:

history | fzf

Esto le permite despabilarse interactivamente su historial de comandos. Puede encontrar fácilmente el comando que ejecutó hace tres días pero que no recuerda del todo. Escriba algunas saber, búsquelo, presione Enter y estará vivo para ejecutarse.

Filtrado inteligente de archivos con confirmación

ack es similar a grep, pero está diseñado específicamente para despabilarse código. Omite automáticamente archivos irrelevantes (como archivos binarios, registros o carpetas de control de versiones), lo que lo hace consumado para los desarrolladores. No está habitable de forma predeterminada, debe instalarlo en su sistema. Por ejemplo, si estás usando Ubuntu, ejecuta esto:

sudo apt install ack

Una vez instalado, puedes usarlo para despabilarse cualquier cosa. Por ejemplo, para despabilarse una definición de función en archivos Python, use:

ack --python "def my_function"

¿Quieres encontrar todos los comentarios TODO en tu plan? Pasar:

ack "TODO"

Todavía puede usarlo con indicadores comunes, por ejemplo, si necesita una búsqueda que no distinga entre mayúsculas y minúsculas con números de ringlera, ejecute:

ack -i -n "config"

Adicionalmente, ack ya conoce los tipos de archivos comunes. Puede despabilarse solo en archivos JavaScript, archivos Python o archivos Markdown usando indicadores como --js o --python.

En el pasado, ayer de que apareciera ripgrep, ack era la útil a la que recurrían los desarrolladores. Ahora, ripgrep es más rápido, pero ack todavía tiene su encanto para obtener resultados legibles y filtrado realizable de usar para los desarrolladores.

Pensamientos finales

La terminal de Linux puede resultar intimidante al principio, pero una vez que empiezas a utilizar estas herramientas de búsqueda, se convierte en parte de tu flujo de trabajo diario. Una vez que se sienta cómodo con ellos, igualmente puede crear sobrenombre en su shell para no tener que memorar comandos largos.

spot_img

Artículos relacionados

spot_img

DEJA UNA RESPUESTA

Por favor ingrese su comentario!
Por favor ingrese su nombre aquí

Últimos artículos