J'essaie d'expliquer la redirection un peu.
Vous rediriger l'un des dix cours d'eau avec de fichier> ou < fichier
Il est sans importance, si la redirection est avant ou après la commande,
donc, ces deux lignes sont presque les mêmes.
dir > file.txt
> file.txt dir
La redirection dans cet exemple n'est qu'un raccourci pour 1>, cela signifie que le flux 1 (STDOUT) sera redirigé.
Ainsi, vous pouvez rediriger n'importe quel flux avec les préfixant le nombre comme 2> err.txt et il est également possible de rediriger les flux multiples en une seule ligne.
dir 1> files.txt 2> err.txt 3> nothing.txt
Dans cet exemple, la "sortie standard" qui sera en files.txt, de toutes les erreurs seront en err.txt et le stream3 va aller dans l'nothing.txt (DIR n'utilisez pas le volet 3).
Stream0 est STDIN
Stream1 est STDOUT
Stream2 est STDERR
Stream3-9 ne sont pas utilisés
Mais qu'advient-il si vous essayez de rediriger plusieurs fois le même cours d'eau?
dir > files.txt > two.txt
"Il peut y avoir seulement un", et c'est toujours le dernier!
C'est donc égale à dir > two.txt
Ok, il y a une possibilité supplémentaire, de rediriger un flux à un autre.
dir 1>files.txt 2>&1
2>&1 redirige stream2 à stream1 et 1>files.txt redirige tous à files.txt.
Voici l'ordre important!
dir ... 1>nul 2>&1
dir ... 2>&1 1>nul
Sont différents, le premier redirige tous (STDOUT et STDERR) à NUL.
Mais la deuxième ligne redirige la sortie standard (STDOUT) à NUL, et STDERR vers le "vide" STDOUT.
Comme une conclusion, c'est évidemment pourquoi les échantillons de Otávio Décio et andynormancx ne peuvent pas travailler.
command > file >&1
dir > file.txt >&2
Les deux essayer de rediriger stream1 deux fois, mais "Il ne peut être seulement un", et c'est toujours le dernier.
Ainsi, vous obtenez
command 1>&1
dir 1>&2
Et dans le premier exemple de redirection de stream1 à stream1 n'est pas autorisé (et pas très utile).
j'espère que ça aide
jeb