1 votes

trouver . -name "foo" | more ne fonctionne pas

Je suis un novice d'Unix. J'utilise find, mais j'obtiens trop de résultats qui ne tiennent pas sur mon écran puisqu'il liste les dossiers dont les permissions sont refusées. J'ai essayé de le faire passer à plus mais cela ne semble pas avoir d'effet. J'ai donc deux questions :

  1. Comment puis-je filtrer les dossiers auxquels je n'ai pas accès ?
  2. Comment puis-je mettre en page les résultats de find - je n'arrive pas à le faire fonctionner avec more.

Gracias

8voto

jcodeninja Points 457

Pour supprimer les erreurs de refus de permission, ajoutez 2>/dev/null à la fin de votre find déclaration

1voto

Howiecamp Points 171

Essayez avec (si vous utilisez sh, bash) :

find . -name "foo" 2>&1 | more

0voto

Kyle Brandt Points 81077

Je ne comprends pas pourquoi le fait de le passer à plus ne fonctionne pas pour vous. Mais une solution simple serait de rediriger la sortie vers un fichier, puis de le mettre en page. L'exemple suivant redirige la sortie sortie standard dans un fichier, et le erreur standard conservera la valeur par défaut, qui consiste à afficher l'erreur à l'écran :

find . -iname '*something*' > myfile.out
more myfile.out

Vous devrez cependant attendre que la recherche soit terminée pour tout voir. Si vous voulez vous débarrasser entièrement de ces messages d'erreur, et avoir toujours les résultats sans erreur, allez dans ce fichier :

find . -iname '*something*' > myfile.out 2> /dev/null

Chaque fois que vous exécutez ceci, myfile.out sera écrasé. Cette redirection est standard avec le Shell et peut être utilisée avec la plupart des commandes. Voici un petit tutoriel sur la redirection cela vaut la peine de l'apprendre.

Les autres exemples :
Avec 2>&1 L'erreur standard (stderr) est redirigée vers stdout, donc les deux finissent par être acheminés vers more. Avec 2> /dev/null, vous les envoyez vers un périphérique spécial qui est fondamentalement un trou noir (alias le seau de bits). Avec *nix, les périphériques sont représentés par des fichiers.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X