GNU/Linux >> Tutoriels Linux >  >> Linux

Comment rediriger Stderr et Stdout vers différents fichiers et également les afficher dans le terminal ?

Je veux voir la sortie d'une commande dans le terminal comme s'il n'y avait pas de redirection.
De plus, stderr doit être redirigé vers err.log et stdout doit être redirigé vers stdout.log.

Ce serait bien d'avoir également la copie exacte de ce qui est affiché dans le terminal, c'est-à-dire les erreurs imprimées au fur et à mesure qu'elles se produisent, dans un fichier séparé :stdouterr.log.

Réponse acceptée :

Utilisez le tee commande comme suit :

(cmd | tee stdout.log) 3>&1 1>&2 2>&3 | tee stderr.log

3>&1 1>&2 2>&3 c'est ainsi que vous permutez stderr et stdout, car tee ne peut accepter que stdout.

Jetez un œil à la commande Unix tee pour des redirections plus avancées à l'aide de tee .


Linux
  1. Comment un processus peut-il intercepter stdout et stderr d'un autre processus sous Linux ?

  2. Est-il possible de faire en sorte que les sorties stdout et stderr soient de couleurs différentes dans XTerm ou Konsole ?

  3. comment se connecter à mysql et interroger la base de données à partir du terminal linux

  4. Shell :redirige stdout vers /dev/null et stderr vers stdout

  5. Rediriger la sortie de la commande vers le fichier et le terminal

Comment rediriger stderr vers stdout dans Bash

Tout sur les fichiers tar et comment tar, décompresser des fichiers sous Linux à l'aide du terminal

Comment afficher et surveiller les fichiers journaux dans CentOS 8

Comment afficher des fichiers gif dans Ubuntu Terminal

Comment supprimer des fichiers et des répertoires sur un terminal Linux

Comment copier des fichiers et des répertoires dans un terminal Linux