
Hemos creado varios archivos en nuestro sistema Linux y nos es imposible recordar la ubicación de todos los archivos.En este caso puedes usar «posición» o «Buscar» comando para ayudarlo a encontrar el archivo.
El comando de localización se utiliza para localizar archivos y directorios en el sistema. Puede buscar archivos y directorios según el nombre, el contenido o la ubicación.
Estoy siguiendo esta guía en una versión mínima de Debian 11, creo que este paso funcionará en todas las principales distribuciones de Linux:
requisitos previos
Los requisitos previos son simples; solo necesita tener posición El paquete está instalado en su sistema, pero ¿cómo puedo saber si está disponible?
muy simple, corre posición comando, si imprime el siguiente resultado, puede omitir el paso de instalación y seguir el uso del comando de localización en Linux.
locate: pattern argument expected
Try 'locate --help' for more information.
para los que consiguen «bash: localizar: comando no encontrado» Es necesario seguir los siguientes pasos:
Ubicación de instalación en Linux
El comando de localización se puede instalar desde los repositorios oficiales en todas las distribuciones de Linux. Solo necesita instalar el paquete mlocate para acceder al comando de localización ejecutando los siguientes comandos de acuerdo con su distribución respectiva:
Ubicación de instalación en Ubuntu/Debian
sudo apt update
sudo apt install mlocate // Ubuntu/Debian based distributions
Instalar en RockyLinux/RHEL
sudo dnf update
sudo dnf install mlocate // AlamaLinux/RockyLinux/RHEL based distributions
Instalar segmentación en ManjaroLinux/Endeavour/Arch Linux
sudo pacman -S mlocate // Manjaro Linux/Endeavour OS/Arch based distributions
Una vez instalado, puede ejecutar los siguientes ejemplos para obtener más información sobre el uso del comando de localización.
Más de 8 ejemplos de cómo usar el comando de localización en Linux
Primero, el uso básico del comando de localización
El uso de la localización es intuitivo; solo necesita llamar al comando de localización y pasar el nombre del archivo como argumento para localizar un archivo desde el almacenamiento en disco.
La sintaxis básica del comando de localización es la siguiente:
locate [SEARCH-QUERY]
Por ejemplo, necesito buscar todos los historia como nombre de archivo o ruta en el directorio actual y sus subdirectorios,
Puedo usar los siguientes comandos:
$ locate "history"
/usr/share/man/man1/docker-history.1.gz
/usr/share/man/man1/docker-image-history.1.gz
......
/var/log/apt/history.log
/var/log/apt/history.log.1.gz
2. Formatee el comando de localización con menos
Cuando el comando de localización encuentra varios nombres de archivo que consisten en sus respectivos parámetros de búsqueda, la lista puede volverse larga y necesitará algún tipo de herramienta de búsqueda para desplazarse hacia adelante y hacia atrás.
Menos comandos y ejemplos en Linux
Para una mejor legibilidad, puede usar la canalización de comando menos para ubicar el comando.
sintaxis
locate [SEARCH-QUERY] | less
Por ejemplo, ejecuté el comando anterior en una interfaz TTY y tuve un problema de desplazamiento, pero una vez que canalicé la salida con menos, el problema se resolvió.
Aquí está el comando que uso:
$ locate "history" | less
3. Limite el número de salidas
En el ejemplo anterior, ha visto que obtuvimos muchos resultados para una consulta de búsqueda específica. Sería mejor si pudiéramos limitar la salida a un número específico.
sintaxis:
locate [SEARCH-QUERY] -n [NO.OF OUTPUTS]
Por ejemplo, si quisiéramos limitar el número de resultados a 5, podríamos usar -norte Opción con consulta de búsqueda.
$ locate history -n 5
/home/ankit/.bash_history
/home/jane/.local/share/klipper/history2.lst
/home/qbtuser/.bash_history
/home/trendoceans/.bash_history
/home/trendoceans/.zsh_history
4. Mostrar o contar el número de consultas de búsqueda
Cuando limita su búsqueda con el comando anterior, seguramente perderá varios resultados. Si quiero saber el número de entradas para una consulta o patrón de búsqueda en particular, ¿cómo lo hago?
sintaxis
$ locate -c [SEARCH-QUERY]
Por ejemplo, quiero encontrar la cantidad de archivos con «historial» como nombre de archivo o ruta.
$ locate -c "history"
466
¡DIOS MÍO! Tengo 466 archivos, incluido el historial que tiene un nombre de archivo.
5. Ignorar la distinción entre mayúsculas y minúsculas
El resultado que obtiene del comando de localización en la pantalla distingue entre mayúsculas y minúsculas, lo que significa que cuando busca «historia,» solo encontrará una palabra «historia,» ignorará algo como «historia» o «historia.»
Si desea buscar palabras que no distingan entre mayúsculas y minúsculas, debe usar -Una generación opciones
sintaxis:
locate -i [SEARCH-QUERY]
Por ejemplo, si desea buscar todos los archivos con historial en nombre o ruta, debe usar -Una generación Las opciones se muestran en el siguiente comando:
$ locate -i HISTORY
/usr/share/perl/5.32.1/CPAN/Meta/History
/usr/share/perl/5.32.1/CPAN/Meta/History.pm
....
/var/log/apt/history.log
/var/log/apt/history.log.1.gz
6. Busque el nombre de archivo exacto
El comando anterior está bien cuando no está seguro del nombre del archivo y la ubicación para especificar la consulta. Sin embargo, cuando determina el nombre del archivo, puede limpiar el desorden e imprimir la ruta exacta del archivo.
Para encontrar la ruta exacta del nombre de archivo que puede usar -r o –regex opciones
sintaxis:
locate -r [SEARCH-QUERY]
Por ejemplo, quiero averiguar la ubicación del registro del historial de comandos de apt. Para encontrarlo, puede ejecutar el siguiente comando:
$ locate -r history.log
/var/log/apt/history.log
/var/log/apt/history.log.1.gz
7. Mostrar solo los archivos disponibles
No, te sorprenderá su velocidad. posición comando para encontrar la ruta absoluta para una consulta de búsqueda específica. Pero a veces, puede encontrar que la ruta a un archivo ya no está disponible en su sistema, y el comando de localización aún muestra esa ruta.
Esto sucede porque actualizar b El comando actualiza el archivo de la base de datos cada 24 horas a través de un trabajo cron. Cualquier cambio que ocurra después de un ciclo de actualización no se registrará hasta el siguiente ciclo o actualización manual.
puedes usarlo -mi o -existente Opción para mostrar solo los archivos existentes.
sintaxis:
locate -e [SEARCH-QUERY]
Por ejemplo, permítanme eliminar el nombre de archivo «sample.txt» y ejecutar el comando -mi opciones y -mi Opciones para encontrar la diferencia.
$ rm sample.txt
$ locate sample.txt
/home/trendoceans/sample.txt
$ locate -e sample.txt -c
0
8. Estadísticas para /var/lib/mlocate/mlocate.db
Como sabe, el comando de localización comienza desde /var/lib/mlocate/mlocate.dbEntonces, puede usar el siguiente comando para averiguar cuántos registros están almacenados en la base de datos, que incluye la ubicación de la base de datos, el número. El número total de archivos en el directorio, incluidos el tamaño y el nombre de archivo de la base de datos:
$ locate -S
Database /var/lib/mlocate/mlocate.db:
93,135 directories
8,94,890 files
7,96,93,484 bytes in file names
2,81,82,516 bytes used to store database
9. Use una base de datos mlocate diferente
A veces, su sistema puede tener varios archivos mlocate disponibles, si desea leer ese archivo mlocate, entonces necesita usar -d y use el patrón de búsqueda para especificar la ruta a la base de datos.
Por ejemplo, si tiene dos bases de datos mlocate disponibles, puede usar el siguiente comando para buscar archivos de la segunda base de datos mlocate:
sintaxis:
locate -d [NEW DATABASE PATH] [SEARCH-QUERY]
10. Actualice manualmente la base de datos de ubicación
El archivo de base de datos /var/lib/mlocate/mlocate.db se actualiza cada 24 horas mediante un trabajo cron, los nuevos cambios se reflejarán en el sistema de archivos después de 24 horas.
Si ha realizado algún cambio y desea actualizar la base de datos inmediatamente, debe ejecutar el siguiente comando en la terminal para actualizar la base de datos.
$ sudo updatedb
Ahora puede ejecutar el comando de localización para encontrar detalles actualizados.
20+ Encuentra comandos que puedes usar todos los días
envolver
Eso es todo hasta ahora.
Si desea compartir algunos comandos de localización que me perdí o algún consejo que sea útil para los usuarios de Linux, compártalo con nosotros.
Estaremos encantados de tenerlos.
Un tipo apasionado por la tecnología, exploró algunas tecnologías increíbles y exploró más, y mientras avanzaba, tuve la oportunidad de trabajar en el desarrollo de Android, Linux, AWS, DevOps usando varias herramientas de código abierto.
Uno de mis lemas de vida es «Sé siempre un estudiante de por vida».