Non, vous ne pouvez pas avec la redirection pure.
Mais avec quelques astuces (comme tee.bat ) vous pouvez.
J'essaye d'expliquer un peu la redirection.
Vous redirigez l'un des dix flux avec > fichier ou <fichier.
Cela n'a pas d'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 en ajoutant le numéro comme 2> err.txt et il est également permis de rediriger plusieurs flux sur une seule ligne.
dir 1> files.txt 2> err.txt 3> nothing.txt
Dans cet exemple, la "sortie standard" ira dans files.txt, toutes les erreurs seront dans err.txt et le stream3 ira dans rien.txt (DIR n'utilise pas le stream 3).
Stream0 est STDIN
Stream1 est STDOUT
Stream2 est STDERR
Stream3-9 n'est pas utilisé
Mais que se passe-t-il si vous essayez de rediriger le même flux plusieurs fois?
dir > files.txt > two.txt
"Il ne peut y en avoir qu'un", et c'est toujours le dernier!
Donc, il est égal à dir> two.txt
Ok, il y a une possibilité supplémentaire, rediriger un flux vers un autre flux.
dir 1>files.txt 2>&1
2> & 1 redirige stream2 vers stream1 et 1> files.txt redirige tout vers files.txt .
L'ordre est important ici!
dir ... 1>nul 2>&1
dir ... 2>&1 1>nul
sont différents. Le premier redirige tout (STDOUT et STDERR) vers NUL,
mais la seconde ligne redirige le STDOUT vers NUL et STDERR vers le STDOUT "vide".
En guise de conclusion, il est évident que les exemples d'Otávio Décio et d'andynormancx ne peuvent pas fonctionner.
command > file >&1
dir > file.txt >&2
Les deux essaient de rediriger stream1 deux fois, mais "Il ne peut y en avoir qu'un", et c'est toujours le dernier.
Alors vous obtenez
command 1>&1
dir 1>&2
Et dans le premier exemple, la redirection de stream1 vers stream1 n'est pas autorisée (et pas très utile).
J'espère que ça aide.