Sujet : Re: script sh / redirection de sorties
De : fantome.forums.tDeContes (at) *nospam* free.fr.invalid (Thomas)
Groupes : fr.comp.os.unixDate : 19. Mar 2022, 17:28:02
Autres entêtes
Organisation : Guest of ProXad - France
Message-ID : <fantome.forums.tDeContes-A0265E.16280219032022@news.free.fr>
References : 1 2 3 4
User-Agent : MT-NewsWatcher/3.5.3b3 (Intel Mac OS X)
In article <
87y218wton.fsf@universite-de-strasbourg.fr.invalid>,
Alain Ketterlin <
alain@universite-de-strasbourg.fr.invalid> wrote:
Thomas <fantome.forums.tDeContes@free.fr.invalid> writes:
- on fait : ... 1> fichier.log 2>&1 ...
Je ne sais pas pourquoi j'ai écrit "1> fichier.log", le 1 n'est pas
nécessaire (mais inoffensif). Donc "commande > fichier.log 2>&1"
surement parce que c'est logique et plus lisible, puisque le 1 apparait
dans le terme suivant.
c'est bête qu'on doive en mettre de chaque coté du nom du fichier,
y a-t-il un moyen plus compact, du genre : ... 2>&1 1> fichier.log ... ?
L'ordre est important, les redirections sont faites de gauche à droite
(Il n'y a pas "deux cotés" du nom du fichier.) Dans ton exemple, l'effet
est :
1) 2>&1 : renvoie l'erreur (2) sur la même chose que la sortie (1, le
terminal, à ce stade)
2) 1> fichier.log (ou simplement "> fichier.log") : renvoie la sortie
sur le fichier
Donc l'erreur standard reste affectée au terminal (ou à ce à quoi était
affectée la sortie standard au moment où elle a été dupliquée).
ce que je comprend, c'est que ça n'est pas parfaitement intuitif, parce
que :
le 1er chiffre désigne le descripteur de fichier lui-même, tandis que le
2eme désigne sa destination.
cad que placé en 1ere ou en 2eme position, ils n'ont pas le même sens.
-- RAPID maintainerhttp://savannah.nongnu.org/projects/rapid/