Tengo el siguiente comando:
find / -name libGL.so.1
Que devuelve muchas líneas con "Permiso denegado". Quiero excluir tales líneas, así que agregué lo siguiente:
find / -name libGL.so.1 | grep -v 'denied'
Pero el resultado es el mismo: my grep -v 'denied'
no está filtrando las líneas con Permission denied
. He intentado muchas variaciones, revisé los tutoriales grep, pero no puedo resolver el problema. ¿Alguna sugerencia?
/foo/bar/denied/libGL.so.1
, combinarstdout
ystderr
luego filtrar ocultaría el resultadoSu comando debe ser:
Find se queja de los permisos en el error estándar (fd2). Para eliminar esas líneas, redirija (>) el estándar al depósito de bits (/ dev / null).
fuente
Las líneas de "permiso denegado" van a la secuencia stderr (error estándar), pero está canalizando stdout (salida estándar) a través de grep.
Puede redirigir stderr completamente con
fuente
¿Has intentado llamar al comando con sudo ?
Si aún muestra el mensaje, use la redirección ya mencionada de stderr (fd = 2) a nirvana (/ dev / null) :
Más ideas aquí , ¡buena suerte!
fuente