|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre du Club
![]() Inscription : janvier 2007 Messages : 270 ![]() |
Bonjour tout le monde.
J'ai un soucis avec une redirection de sortie de commande bash Cette commande devrait me mettre les sortie d'erreur + la sortie standart à la fin de log2.txt... Mais le deuxième ">" n'est pas accepté par bash. Est ce que vous sauriez comment je peux faire pour ne pas écraser mon fichier de sortie? Merci d'avance. |
|
|
00
|
|
|
#2 |
|
Expert Confirmé Sénior
![]() francois Ingénieur systèmes et réseaux Inscription : juillet 2006 Messages : 3 534 ![]() |
là RTFM
![]() 2>&1 log 2> log 1> log > log >> log &> log >& log etc... |
|
|
10
|
|
|
#3 |
|
Membre éprouvé
![]() Benoît Inscription : janvier 2009 Messages : 392 ![]() |
Salut danathane après avoir lu le putain de manuel
la théorie : pour rediriger la sortie standard (descripteur 1) et la sortie d'erreur d'erreur (descripteur 2) vers le même fichier, il faut rediriger un descripteur de fichier vers un autre préalablement redirigé dans un fichier. Sous linux, 2 descripteurs de fichiers ne pouvant pointer vers le même fichier. la pratique : Par exemple : Ici tu rediriges, la sortie 1 vers log puis du rediriges la sortie erreur 2 vers la sortie 1. une autre possibilité : ici l'inverse à bientôt, ben
__________________
Meet the free software gang |
|
|
00
|
|
|
#4 | |
|
Membre Expert
![]() Ingénieur développement logiciels Inscription : octobre 2008 Messages : 1 375 ![]() |
Citation:
D'accord pour le reste. |
|
|
|
00
|
|
|
#5 |
|
Membre éprouvé
![]() Benoît Inscription : janvier 2009 Messages : 392 ![]() |
salut matafan,
je viens de tester ta commande, tu as effectivement raison. a+, ben
__________________
Meet the free software gang |
|
|
00
|
|
|
#6 | ||
|
Membre éprouvé
![]() Benoît Inscription : janvier 2009 Messages : 392 ![]() |
Petite précision,
je viens de réouvrir un bouquin qui traite de la programmation shell (programmation shell sous linux de Nicolas Pons). Il est bien indiqué que 2 descripteurs de fichiers ne peuvent pointer simultanément vers un seul fichier. "Ceci à cause de l'utilisation de tampons d'écriture dans la gestion des fichiers par le noyau linux. Le résultat peut être inattendu" Voici un exemple : Code :
Dans le premier cas, le message d'erreur est tronqué, il est entier dans le second. a+, ben
__________________
Meet the free software gang |
||
|
|
00
|
|
|
#7 |
![]() ![]() Inscription : décembre 2004 Messages : 1 653 ![]() |
Pour mettre mon grain de sel :
est équivalent à : |
|
|
10
|
|
|
#8 | |
|
Membre éprouvé
![]() Benoît Inscription : janvier 2009 Messages : 392 ![]() |
Citation:
!
__________________
Meet the free software gang |
|
|
|
00
|
|
|
#9 |
|
Membre Expert
![]() Ingénieur développement logiciels Inscription : octobre 2008 Messages : 1 375 ![]() |
Mais non standard. D'ailleurs cette syntaxe est assez mal trouvée puisque c'est aussi une syntaxe valide en shell standard : exécution de la commande en arrière plan (&) et création/troncation du fichier "log" (>log).
|
|
|
00
|
|
|
#10 |
|
Membre éprouvé
![]() Benoît Inscription : janvier 2009 Messages : 392 ![]() |
ok bien vu.
__________________
Meet the free software gang |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com