GNU/Linux >> Tutoriels Linux >  >> Linux

Sortie vers Stdout et en même temps Grep dans un fichier ?

J'ai un script qui affiche du texte sur stdout . Je veux voir toute cette sortie dans mon terminal, et en même temps je veux filtrer certaines lignes et les enregistrer dans un fichier. Exemple :

$ myscript
Line A
Line B
Line C

$ myscript | grep -P 'A|C' > out.file

$ cat out.file
Line A
Line C

Je veux voir la sortie de la première commande dans le terminal et enregistrer la sortie de la deuxième commande dans un fichier. En même temps. J'ai essayé d'utiliser tee , mais sans résultat, ou mieux, avec résultat inversé.

Réponse acceptée :

Je veux voir la sortie de la première commande dans le terminal et enregistrer la sortie de la deuxième commande dans un fichier.

Tant que vous ne vous souciez pas de savoir si ce que vous regardez provient de stdout ou stderr , vous pouvez toujours utiliser tee :

myscript | tee /dev/stderr | grep -P 'A|C' > out.file

Fonctionnera sur Linux; Je ne sais pas si "/dev/stderr" est également applicable sur d'autres *nixes.


Linux
  1. Manière de rediriger la sortie d'un programme et de l'avoir toujours sur Stdout ?

  2. Rediriger et canaliser la sortie ?

  3. Comment rediriger la sortie vers un fichier et stdout

  4. Stocker la sortie de la commande date et watch dans un fichier

  5. Copier et chmod/chown en même temps

Comment obtenir la date et l'heure actuelles en Python

Copier des fichiers et créer des répertoires cibles en même temps

Comment rediriger stderr et stdout vers différents fichiers dans la même ligne de script ?

Comment capturer la sortie d'une commande top dans un fichier sous Linux ?

Comment rediriger la sortie de la commande time vers un fichier sous Linux ?

En quoi le temps CPU et l'utilisation du CPU sont-ils identiques ?