J'ai la commande suivante:
find / -name libGL.so.1
Ce qui renvoie beaucoup de lignes avec "Autorisation refusée". Je souhaite exclure ces lignes, j'ai donc ajouté ce qui suit:
find / -name libGL.so.1 | grep -v 'denied'
Mais la sortie est la même - ma grep -v 'denied'
ne filtre pas les lignes avec Permission denied
. J'ai essayé de nombreuses variantes, regardé les tutoriels grep, mais je ne peux pas comprendre le problème. Aucune suggestion?
/foo/bar/denied/libGL.so.1
, la combinaisonstdout
etstderr
puis le filtrage cacherait le résultatVotre commande doit être:
Find se plaint des autorisations sur l'erreur standard (fd2). Afin d'éliminer ces lignes, redirigez (>) la norme vers le compartiment de bits (/ dev / null).
la source
Les lignes "permission refusée" vont au flux stderr (erreur standard), mais vous dirigez stdout (sortie standard) via grep.
Vous pouvez rediriger stderr entièrement avec
la source
Avez-vous essayé d'appeler la commande avec sudo ?
S'il affiche toujours le message, utilisez la redirection déjà mentionnée de stderr (fd = 2) vers nirvana (/ dev / null) :
Plus d'idées ici , bonne chance!
la source