El comando de búsqueda en UNIX es una utilidad de línea de comandos para recorrer una jerarquía de archivos. Se puede utilizar para buscar archivos y directorios y realizar operaciones posteriores en ellos. Admite la búsqueda por archivo, carpeta, nombre, fecha de creación, fecha de modificación, propietario y permisos. Al usar ‘-exec’, se pueden ejecutar otros comandos UNIX en los archivos o carpetas encontrados.
Sintaxis:
$find [where to start searching from] [expression determines what to find] [-options] [what to find]
Opciones:
- -exec CMD: el archivo que se está buscando que cumple con los criterios anteriores y devuelve 0 como estado de salida para la ejecución exitosa del comando.
- -ok CMD: funciona igual que -exec, excepto que primero se solicita al usuario.
- -inum N: busca archivos con número de iNode ‘N’.
- -enlaces N: busca archivos con enlaces ‘N’.
- -name demo : busca archivos especificados por ‘demo’.
- -archivo más nuevo: busca archivos que se modificaron/crearon después de ‘archivo’.
- -perm octal: busca el archivo si el permiso es ‘octal’.
- -print: Muestra el nombre de la ruta de los archivos encontrados usando el resto de los criterios.
- -vacío: busca archivos y directorios vacíos.
- -tamaño +N/-N : Búsqueda de archivos de bloques ‘N’; ‘N’ seguida de ‘c’ puede usarse para medir el tamaño en caracteres; ‘+N’ significa tamaño > ‘N’ bloques y ‘-N’ significa tamaño < ‘N’ bloques.
- -nombre de usuario: busque archivos propiedad del nombre de usuario o ID ‘nombre’.
- \(expr \) : Verdadero si ‘expr’ es verdadero; se utiliza para agrupar criterios combinados con OR o AND.
- ! expr : Verdadero si ‘expr’ es falso.
Ejemplos: considere la siguiente jerarquía de árbol:
1. Busque un archivo con un nombre específico.
$find ./GFG -name sample.txt
Buscará sample.txt en el directorio GFG.
Producción :
2. Busque un archivo con patrón.
$find ./GFG -name *.txt
Dará todos los archivos que tengan ‘.txt’ al final.
Producción :
3. Cómo encontrar y eliminar un archivo con confirmación.
$find ./GFG -name sample.txt -exec rm -i {} \;
Cuando se ingresa este comando, aparecerá un mensaje de confirmación, si desea eliminar sample.txt o no. si ingresa ‘Y/y’, se eliminará el archivo. Producción :
4. Busque archivos y directorios vacíos.
$find ./GFG -empty
Este comando encuentra todas las carpetas y archivos vacíos en el directorio o subdirectorios ingresados.
Producción :
5. Busque el archivo con los permisos ingresados.
$find ./GFG -perm 664
Este comando encuentra todos los archivos en el directorio o subdirectorio de GFG con los permisos otorgados.
Producción :
6. Buscar texto en varios archivos.
$find ./ -type f -name "*.txt" -exec grep 'Geek' {} \;
Este comando imprime líneas que tienen ‘Geek’ en ellas y ‘-type f’ especifica que el tipo de entrada es un archivo.
Producción :
?list=PLqM7alHXFySFc4KtwEZTANgmyJm3NqS_L
Publicación traducida automáticamente
Artículo escrito por rishabh1322 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA