14 votes

Que signifie 2>&1 | tee ?

J'ai lu la réponse de @grg à la question "Journaux d'installation de la formule de brassage :

brew install <formula> 2>&1 | tee install.log

Alors Où se trouve exactement le fichier install.log ? et ce qu'est exactement le 2>&1 | tee partie de la commande signifie ?

21voto

grg Points 181593
  • Le site tee imprime la sortie stdout pipée vers le chemin de fichier indiqué et l'affiche dans le terminal. Ceci est couramment utilisé pour enregistrer la sortie des commandes vers le fichier qui, autrement, ne serait imprimée que de manière éphémère dans le terminal.

    Sans tee et en utilisant une simple redirection de brew install > install.log empêcherait l'impression de stdout dans le terminal ainsi que dans le fichier, ce qui nécessiterait d'accéder au fichier pour visualiser les messages.

  • 2>&1 redirige stderr vers stdout à côté du stdout existant, ce qui signifie que les messages d'erreur sont redirigés comme une sortie normale.

    Sans cela, tee n'imprimerait que stdout sans les messages d'erreur dans le journal d'installation.

install.log est relatif au répertoire courant.

7voto

moodforaday Points 2633

2>&1 signifie "envoyer tout message d'erreur (alias 'stderr') sur la même sortie que les messages d'information (alias 'stdout')".

Et

| tee install.log signifie que "toute sortie qu'il y a doit aussi être envoyée au fichier install.log .

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X