No, non puoi con il puro reindirizzamento.
Ma con alcuni trucchi (come tee.bat ) puoi farlo.
Provo a spiegare un po 'il reindirizzamento.
Si reindirizza uno dei dieci flussi con > file o <file
Non è importante, se il reindirizzamento è prima o dopo il comando, quindi queste due righe sono quasi uguali.
dir > file.txt
> file.txt dir
Il reindirizzamento in questo esempio è solo una scorciatoia per 1> , ciò significa che il flusso 1 (STDOUT) verrà reindirizzato.
In questo modo puoi reindirizzare qualsiasi stream anteponendo il numero come 2> err.txt ed è anche possibile reindirizzare più stream in una riga.
dir 1> files.txt 2> err.txt 3> nothing.txt
In questo esempio l '"output standard" andrà in files.txt, tutti gli errori saranno in err.txt e lo stream3 andrà in nothing.txt (DIR non usa lo stream 3).
Stream0 è STDIN
Stream1 è STDOUT
Stream2 è STDERR
Stream3-9 non utilizzati
Ma cosa succede se provi a reindirizzare più volte lo stesso stream?
dir > files.txt > two.txt
"Ce ne può essere solo uno", ed è sempre l'ultimo!
Quindi è uguale a dir> two.txt
Ok, c'è un'ulteriore possibilità, reindirizzare uno stream a un altro stream.
dir 1>files.txt 2>&1
2> & 1 reindirizza stream2 su stream1 e 1> files.txt reindirizza tutto su files.txt .
L'ordine è importante qui!
dir ... 1>nul 2>&1
dir ... 2>&1 1>nul
sono diversi. Il primo reindirizza tutto (STDOUT e STDERR) su NUL,
ma la seconda riga reindirizza STDOUT su NUL e STDERR sullo STDOUT "vuoto".
Come conclusione, è ovvio perché gli esempi di Otávio Décio e andynormancx non possono funzionare.
command > file >&1
dir > file.txt >&2
Entrambi provano a reindirizzare stream1 due volte, ma "Ce ne può essere solo uno" ed è sempre l'ultimo.
Quindi ottieni
command 1>&1
dir 1>&2
E nel primo esempio il reindirizzamento di stream1 a stream1 non è consentito (e non molto utile).
Spero che sia d'aiuto.