É possível redirecionar a saída para vários dispositivos?

3

É possível redirecionar a saída para vários dispositivos / arquivos?

program.exe 1> output1.txt 1>output2.txt

Isso produz apenas output2.txt no Windows.

    
por ShyMan 29.11.2011 / 03:42

2 respostas

1

tee é um comando que oferece a flexibilidade em máquinas * nix para redirecionar a saída para vários arquivos.

Da página do manual -

DESCRIPTION
     The tee utility copies standard input to standard output, 
making a copy in zero or more files.  The output is unbuffered.

No Windows, você pode usar algo semelhante a este .

    
por 29.11.2011 / 04:01
1

Se você estiver usando um shell Unix / Linux, ou Cygwin no Windows, você pode usar o tee para copiar o stdin para vários arquivos de saída:

program.exe | tee output1.txt >output2.txt

Não tenho certeza se existe um tee equivalente no cmd.exe nativo do Windows.

A maioria das shells, como bash, permite combinar stdout e stderr. Aqui está a sintaxe para mesclar stdout e stderr do program.exe e canalizá-lo para tee. 2>&1 diz para redirecionar a saída do descritor de arquivo 2 (stderr) para o descritor de arquivo 1 (stdout)

program.exe 2>&1 | tee output1.txt >output2.txt
    
por 29.11.2011 / 04:00