Código
find / -name netcdf
Salida
find: `/root/.dbus': Permission denied
find: `/root/.gconf': Permission denied
find: `/root/.gconfd': Permission denied
find: `/root/.gnome': Permission denied
find: `/root/.gnome2': Permission denied
find: `/root/.gnome2_private': Permission denied
Respuestas:
Esos mensajes se envían a stderr y, en general, solo se ven esos mensajes en ese flujo de salida. Puede cerrarlo o redirigirlo en la línea de comandos.
o
Además, si va a buscar en el directorio raíz (/), a menudo es bueno completar el proceso para que find no consuma todos los recursos.
Esto disminuye la prioridad del proceso permitiendo a otros procesos más tiempo en la CPU. Por supuesto, si nada más está usando la CPU, no hace nada. :) Para ser técnico, el valor NI (visto desde
ps -l
) aumenta el valor PRI. Los valores PRI más bajos tienen una prioridad más alta. Compararps -l
connice ps -l
.fuente
Solo me gustaría señalar esta respuesta de @Gilles en Excluir rutas que hacen que se quejen de los permisos: Unix y Linux Stack Exchange ; Básicamente implica una construcción
find
que hace que no descienda directorios ilegibles, y en ese sentido, probablemente también sea un poco más rápido.Esto parece funcionar para mí:
o también esto:
Por alguna razón, necesito agregar todos los
g+r,u+r,o+r
(atajos para esoa+r
), de lo contrario, si uno de ellos se deja fuera, aún puedo obtener hits de "Permiso denegado".Aquí hay un desglose de cómo veo esto (tenga en cuenta que el
-a
operador (y)find
está implícito entre dos predicados ):Tenga en cuenta que sin el último
-print
, se muestran algunos elementos adicionales (que no tienen nada que ver con-name 'netcdf'
); los-print
asegura que se imprimen sólo coincide el nombre (si lo hay).fuente
find(1)
no puede descender a un directorio, no lo hará. Por lo tanto, verificar de antemano si puede o no solo agregará trabajo (verifique dos veces), y así lo ralentizará.find
el estado de salida, porque estos errores de permiso hacen que lafind
salida tenga un estado distinto de ceroUse en su
locate(1)
lugar:Solo le mostrará los archivos que su usuario puede ver.
fuente
updatedb
está ejecutando regularmente. Ese no es el caso en todos los sistemas Linux.