LinuxParty
Buscando con el comando find, puede que no queramos incluir algunos directorios en esa búsqueda, la razón principal para excluir la búsqueda, es porque se sabe o conoce que ahí, no están los ficheros que deseamos encontrar, por lo que lo más seguro es descartar la ruta, para acelerar la búsqueda y se más clara y concisa el resultado de la búsqueda. Vamos a poner algunos ejemplos.
Estoy buscando archivos de tipo 'test*' dentro de un repositorio. Dado que tengo un virtualenv, cada vez que hago find -name 'test*'
me encuentra muchos archivos de los módulos que tengo instalados.
find -name 'test*'
Devuelve muchas cosas del tipo:
./env/lib/python3.5/site-packages/paquete/utils/tests
¿Cómo puedo excluir un directorio y todo su contenido de los resultados de find?
Debes utilizar la sintaxis -not -path
para indicar el directorio a excluir:
find -name 'test*'-not -path "./env/*"
Nótese que al escribir el directorio debes añadir un asterisco para que interprete que es todo su contenido. Esto es, find -name 'test*' -not -path "./env/"
solo excluirá el directorio, mientras que "./env/*"
excluirá todo su contenido (recursivamente).
Como siempre, recuerda que la opción -type
te permite restringir por tipo: archivo, directorio... Por ejemplo, esto buscará solamente los archivos:
find -type f -name 'test*'-not -path "./env/*"
-
Linux
- Cambiar la Hora y la Fecha al sistema Linux
- Montar un directorio remoto, vía NFS, en Linux
- Predicciones de Linux para 2025
- Elementary OS 8: una distribución de Linux para usuarios de Windows y macOS
- Renombrar multiples archivos masivamente en Linux (quitar espacios, cambiar mayúsculas) a la vez en Linux
- He utilizado Linux durante 30 años. Aquí hay 5 razones por las que nunca cambiaré a Windows o MacOS
- Mis predicciones sobre Linux para 2025: será un buen año
- ¿Por qué Torvalds eliminó a los encargados rusos del mantenimiento del núcleo de Linux?
- 10 cosas que siempre hago después de instalar Linux (y por qué tú también deberías hacerlo)
- 7 cosas que nunca hago después de instalar Linux (y por qué tú tampoco deberías)
- Detección de Intrusos: Snort, Base, MySQL, y Apache2 en Ubuntu Linux 7.10
- ¿Por qué no más personas usan Linux en el escritorio? Tengo una teoría que quizás no te guste.
- Los países occidentales ricos lideran la expansión mundial del petróleo y el gas
- Systemd 256.1 aborda la queja de que 'systemd-tmpfiles' podría eliminar inesperadamente su directorio /home
- Por qué un kernel Linux de distribución 'congelada' no es la mejor opción para la seguridad