Можно ли перенаправить вывод на несколько устройств / файлов?
program.exe 1> output1.txt 1>output2.txt
Это производит только output2.txt
в Windows.
Можно ли перенаправить вывод на несколько устройств / файлов?
program.exe 1> output1.txt 1>output2.txt
Это производит только output2.txt
в Windows.
Если вы используете оболочку Unix/Linux или Cygwin в Windows, вы можете использовать tee для копирования stdin в несколько выходных файлов:
program.exe | tee output1.txt >output2.txt
Не уверен, что в родном Windows cmd.exe есть тройной аналог.
Большинство оболочек, таких как bash, позволяют комбинировать stdout и stderr. Вот синтаксис для объединения stdout и stderr из program.exe и передачи его в тройник. 2>&1
говорит, что перенаправить вывод файлового дескриптора 2 (stderr) на файловый дескриптор 1 (stdout)
program.exe 2>&1 | tee output1.txt >output2.txt
tee
- это команда, которая предлагает на машинах * nix гибкость для перенаправления вывода в несколько файлов.
Со страницы руководства -
DESCRIPTION
The tee utility copies standard input to standard output,
making a copy in zero or more files. The output is unbuffered.
В Windows вы можете использовать что-то похожее на это.