¿Quieres saber cómo realizar búsquedas usando comandos de Linux? ¡Entonces has venido al lugar correcto!
En este artículo, hablaremos sobre Linux find y localizar comandos, que le ayudarán a buscar cualquier archivo en su máquina.
¿Por qué usar los comandos de búsqueda y localización en Linux?
Los nuevos usuarios de Linux a menudo afirman que se confunden acerca de la ubicación de sus archivos en un servidor. Esto puede deberse a que la mayoría de las personas están acostumbradas a operar Windows o macOS, que tienen diseños de directorio más claros y fáciles de usar.
Si bien hay algo de verdad en esto, Linux brinda a los usuarios más opciones sobre cómo buscar archivos usando ciertos comandos. Además de buscar en función de filtros comunes, también puede buscar archivos por permisos de usuario, tamaño, marcas de tiempo, etc.
Lo que es genial, una vez que entiendes los comandos, buscar archivos en tu plataforma Linux es sorprendentemente fácil.
Para hacer eso, utilizaremos el buscar y localizar comandos en Linux.
Una cosa importante a tener en cuenta es que usaremos Ubuntu VPS en esta guía. Dicho esto, los pasos también deberían funcionar para Debian, CentOS o cualquier otra distribución de Linux. Si no sabe cómo conectarse a VPS, puede seguir esta guía antes de continuar.
Uso del comando Find en Linux
Primero, expliquemos el buscar comando y cómo usarlo.
La sintaxis básica
El comando más popular para buscar y filtrar archivos en Linux es buscar . La sintaxis básica es la siguiente:
find <startingdirectory> <options> <search term>
Comienza con la palabra clave buscar , que alerta a Linux de que todo lo que sigue después se utilizará para encontrar su archivo. El
- / (barra oblicua) — buscar en todo el sistema.
. (punto) — busque desde la carpeta en la que está trabajando actualmente (directorio actual). - ~ (tilde) — para buscar desde su carpeta de inicio.
El segundo argumento
Formas de utilizar el comando find
Echemos un vistazo a varias opciones que Linux ofrece a sus usuarios:
Buscando por Nombre
Por supuesto, el método más común para buscar un archivo es usar su nombre. Para ejecutar una consulta de búsqueda simple usando el nombre del archivo, use el botón buscar comando como este:
find . -name my-file
Usamos el -nombre y buscó un archivo llamado my-file . Tenga en cuenta que comenzamos la búsqueda en nuestro directorio actual usando . (punto) argumento.
Tenga en cuenta que el -nombre argument busca términos que distinguen entre mayúsculas y minúsculas en Linux. Si conoce el nombre del archivo, pero no está seguro de si distingue entre mayúsculas y minúsculas, use el siguiente buscar comando:
find . -iname my-file
También puede buscar todos los archivos sin una determinada palabra clave en su nombre. Hay dos maneras de hacer esto. El primer método consiste en utilizar –not palabra clave de la siguiente manera:
find . -not -name my-file
En segundo lugar, podemos usar el símbolo de exclamación (! ). Sin embargo, debe estar precedido por el identificador de escape (\) para que Linux sepa que esta es la parte de buscar comando.
find . \! -name my-file
Puede buscar varios archivos con un formato común como .txt también:
find . -name “*.txt”
Esto mostrará una lista de todos los archivos de texto que comienzan con la carpeta actual.
Por último, si desea encontrar un archivo determinado por su nombre y eliminarlo, use el -delete argumento después del nombre del archivo:
find . -name my-file -delete
Buscando por tipo
Linux permite a los usuarios enumerar toda la información según sus tipos. Hay varios filtros que puede utilizar:
- d – directorio o carpeta
- f – archivo normal
- l – enlace simbólico
- c – dispositivos de carácter
- b – bloquear dispositivos
Un ejemplo simple del uso de un tipo de archivo se puede ver a continuación:
find / -type d
Esto mostrará una lista de todos los directorios actuales en su sistema desde que buscamos desde nuestro directorio raíz con el símbolo / (barra oblicua).
También puede combinar el –tipo y -nombre opciones para restringir aún más sus búsquedas:
find / -type f -name my-file
Esto buscará archivos llamados mi-archivo , excluyendo directorios o enlaces.
Buscando por tiempo
Si desea buscar archivos en función de cuándo se accedió a ellos y modifique las huellas de tiempo. Linux realiza un seguimiento de los archivos utilizando estas tres marcas de tiempo.
- Tiempo de acceso (-una vez ) – cuándo se leyó o se escribió el archivo.
- Hora de modificación (-mtime ) – cuando se modificó el archivo.
- Cambiar hora (-ctime ) – cuando se actualizaron los metadatos del archivo.
Esta opción debe usarse con un número que especifica cuántos días pasaron desde que se accedió, modificó o cambió el archivo:
find / -atime 1
Este comando mostrará todos los archivos a los que se accedió hace un día a partir de su hora actual.
Podemos reducir aún más nuestras consultas agregando más (
find / -mtime +2
Enumera todos los archivos que tienen un tiempo de modificación de hace más de dos días.
Para buscar todos los archivos cuyos metadatos se actualizaron hace menos de un día, ejecute lo siguiente:
find / -ctime -1
Si bien no se usa con frecuencia, hay algunos argumentos adicionales que también están relacionados con las búsquedas cronometradas. El -mmin El argumento busca archivos modificados cada minuto. Se puede usar así:
find / -mmin -1
Además, tenemos el -nuevo argumento, que se puede utilizar para comparar la antigüedad de dos o más archivos y mostrar el más nuevo.
find / -newer my-file
Lo que obtendrá son todos los archivos que se modificaron más recientemente que su archivo.
Buscando por Tamaño
Linux le permite buscar archivos según su tamaño. La sintaxis para buscar archivos por tamaño es:
find <startingdirectory> -size <size-magnitude> <size-unit>
Puede especificar las siguientes unidades de tamaño:
- c – bytes
- k – kilobytes
- M – megabytes
- G – gigabytes
- b – fragmentos de 512 bytes
Un ejemplo simple de cómo usar buscar El comando para los tamaños de archivo es el siguiente:
find / -size 10M
Aquí buscamos todos los archivos de su sistema que tengan exactamente 10 megabytes. Al igual que cuando realiza una búsqueda basada en el tiempo, puede filtrar aún más sus búsquedas utilizando los signos más y menos:
find / -size +5G
Mostrará todos los archivos que tengan más de cinco gigabytes de tamaño.
Buscar por propiedad
Linux le brinda la posibilidad de reducir sus búsquedas en función de la propiedad del archivo. Para encontrar archivos de un determinado propietario, se debe ejecutar el siguiente comando:
find / -user john
El script devolverá una lista de todos los archivos que el usuario nombró john posee Similar a los nombres de usuario, también podemos encontrar archivos a través de nombres de grupos:
find / -group classroom
Buscar por permisos
Los usuarios pueden buscar archivos según los permisos de archivo usando -perm opción. Por ejemplo:
find / -perm 644
En Linux, 644 corresponde al permiso de lectura y escritura. Eso significa que este comando buscará todos los archivos que solo tienen permisos de lectura y escritura. Puedes seguir jugando con esta opción:
find / -perm -644
Con la adición de un símbolo de guion, regresará con todos los archivos que tengan al menos 644 permisos.
Siéntase libre de leer más sobre permisos y varios códigos correspondientes a otros permisos de Linux.
Otras opciones útiles
Hay otras opciones útiles que debes recordar.
Por ejemplo, para buscar archivos y carpetas vacíos en su sistema, use lo siguiente:
find / -empty
Del mismo modo, para buscar todos los ejecutables guardados en su disco, utilice el -exec opción:
find / -exec
Para buscar archivos legibles, puede ejecutar el siguiente comando:
find / -read
Como puede ver, hay un montón de opciones disponibles para que los usuarios adapten sus consultas como lo deseen. Veamos el otro comando que se puede usar para localizar archivos en Linux.
Uso del comando Locate en Linux
El localizar El comando es una alternativa útil, ya que es más rápido que buscar comando al realizar búsquedas. Eso es porque el primero solo escanea su base de datos de Linux en lugar de todo el sistema. Además, la sintaxis es relativamente más fácil de escribir.
Cómo instalar el paquete de localización
De forma predeterminada, Linux no viene con localizar comando preinstalado. Para obtener el paquete, ejecute los siguientes comandos uno tras otro:
sudo apt-get update sudo apt-get install mlocate
La sintaxis básica
Ahora puede usar el comando para buscar archivos usando esta sintaxis:
locate [my-file]
La vainilla localiza El comando a veces puede devolver archivos que se han eliminado, si la base de datos no se actualizó. La mejor solución es actualizar manualmente la base de datos ejecutando lo siguiente:
sudo updatedb
Cómo usar el comando de localización de Linux
Compartiremos contigo las aplicaciones más comunes de Linux locate comando.
Buscar nombre de archivo exacto
La sintaxis básica solo le permite buscar archivos que contengan el término de búsqueda. Si desea obtener el archivo con el nombre exacto, puede usar -r y agregue el símbolo de dólar ($ ) al final de su término de búsqueda, por ejemplo:
locate -r my-file$
Cuenta el número de archivos
Para saber cuántos archivos aparecen en su resultado de búsqueda, inserte -c después del comando de localización.
locate -c my-file
En lugar de enumerar todos los archivos, le dará el número total de ellos.
Ignorar mayúsculas y minúsculas
Usa -i en tu linux localiza Comando para ignorar archivos sensibles a mayúsculas y minúsculas. Por ejemplo:
locate -i my-file
Se mostrarán todos los archivos con este nombre, independientemente de los símbolos en mayúsculas o minúsculas que se encuentren.
Mostrar archivos existentes
Tal como hemos mencionado, Linux localizar El comando puede incluso mostrarle un archivo eliminado si no ha actualizado la base de datos. Afortunadamente, puedes solucionar este problema usando -e opción, así:
locate -e my-file
Al hacer esto, solo obtendrá los archivos que existen en el momento en que realiza la ubicación comando.
Deshabilita los errores durante la búsqueda
-q La opción evitará que aparezcan errores cuando se procese la búsqueda. Para hacer esto, simplemente ingrese:
locate -q my-file
Limitar el número de resultados de búsqueda
Si desea limitar el número de resultados de búsqueda, -n
locate my-file n 10
El script solo mostrará los primeros 10 archivos que descubra, incluso cuando haya más.
Conclusión
Puede buscar archivos en su servidor mediante buscar y localizar Comandos en Linux. Estas dos poderosas herramientas tienen sus propias ventajas. Por lo tanto, te animamos a probar ambos y ver cuál es el más adecuado para ti. Aquí hay un breve resumen de lo que hablamos:
- Usar buscar para buscar archivos según el nombre, el tipo, la hora, el tamaño, la propiedad y los permisos, además de algunas otras opciones útiles
- Instalar y usar Linux ubicar comando para realizar búsquedas de archivos más rápidas en todo el sistema. También le permite filtrar por nombre, distinción entre mayúsculas y minúsculas, carpeta, etc.
Si tiene alguna pregunta, ¡no dude en hacerla en los comentarios!