Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1478 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs

  [Bash] rediriger stdout et stderr vers un fichier

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Bash] rediriger stdout et stderr vers un fichier

n°769964
jumar
Posté le 10-01-2006 à 18:34:34  profilanswer
 

Bonjour je cherche a rediriger en bash stdout et stderr vers un meme fichier sachant qu' Il faut pas que cela écrase ce qui est déjà dans le fichier (on logue tout les messages).  
 
J'arrive à rediriger soit stderr soit stdout :

$ rm blablah 2>>monfichier.trace

et :

$ rm blahblah 1>>monfichier.trace

mais pas les deux à la fois :

$ rm blahblah &>>monfichier.trace

ne fonctionne pas sur ma machine.
 
Est-ce possible aussi de rendre cette redirection active pour toute une partie d'un scipt bash puis de la desactiver ensuite ?
 
Merci
 

mood
Publicité
Posté le 10-01-2006 à 18:34:34  profilanswer
 

n°770013
Pillow
'cos the trees won't talk
Posté le 10-01-2006 à 19:51:35  profilanswer
 

jumar a écrit :

Bonjour je cherche a rediriger en bash stdout et stderr vers un meme fichier sachant qu' Il faut pas que cela écrase ce qui est déjà dans le fichier (on logue tout les messages).

$ rm blablah >> monfichier.trace 2>&1


Citation :

Est-ce possible aussi de rendre cette redirection active pour toute une partie d'un scipt bash puis de la desactiver ensuite ?

Dans un script tu peux faire quelque chose comme ça :

Code :
  1. exec 3>&1     # "sauvegarder" stdout
  2. exec 4>&2     # "sauvegarder" stderr
  3.  
  4. exec 1>>monfichier.trace      #rediriger stdout vers ton fichier
  5. exec 2>>monfichier.trace      #rediriger stderr vers ton fichier
  6. # exécuter tes commandes
  7. rm foo
  8. echo bar
  9. rm baz
  10.  
  11.  
  12. exec 1>&3 # restaurer la "valeur" de stdout
  13. exec 2>&4 # restaurer la "valeur" de stderr
  14.  
  15. exec 3>&- # fermer le FD 3
  16. exec 4>&- # fermer le FD 4

Ou sinon, tu peux tout simplement utiliser des parenthèses :

Code :
  1. (rm foo
  2. echo bar
  3. rm baz ) >> monfichier.trace 2>&1


 
 

n°770031
jumar
Posté le 10-01-2006 à 20:17:44  profilanswer
 

Merci bcp, c'est parfait!


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs

  [Bash] rediriger stdout et stderr vers un fichier

 

Sujets relatifs
Fichier IDEbackup incrémentale d'un serveur de fichier
créer un fichier[Red hat 9.0] Probleme de demarrage dans le fichier /etc/rc.d/rc.sysin
openSuse 10.0 vers 10.1 ?Fichier bizarre
Serveur de fichier partition ?Mise à jour mac os 8.5 vers 8.6
petit prb de condition sous bash[Sécurite] [Signature] Configuration d'apache 2 Fichier httpd.conf
Plus de sujets relatifs à : [Bash] rediriger stdout et stderr vers un fichier


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR