Redirecionar a saída da linha de comando do Windows para um arquivo de texto
- 1240
- 351
- Leroy Lebsack
Uma das maneiras mais úteis de registrar e solucionar problemas do comportamento de comandos ou trabalhos em lote que você executa no Windows é redirecionar a saída para um arquivo.
No entanto, existem algumas maneiras diferentes de redirecionar gravações de linha de comando para um arquivo. A opção que você escolher depende de como você deseja ver sua saída de comando.
ÍndiceIsso ocorre porque a saída padrão para o comando foi redirecionada para um arquivo chamado MyOutput.TXT. O arquivo agora existe no mesmo diretório em que você executou o comando. A saída de erro padrão ainda é exibida como normalmente.
Observação: Tenha cuidado para alterar o Active Directory para o prompt de comando antes de executar o comando. Dessa forma, você saberá onde os arquivos de saída são armazenados.
Você pode visualizar a saída padrão que foi para o arquivo digitando “MyOutput.txt ”na janela de comando. Isso abrirá o arquivo de texto no seu visualizador de arquivo de texto padrão. Para a maioria das pessoas, isso geralmente é um bloco de notas.exe.
Na próxima vez que você executar o mesmo comando, o arquivo de saída anterior será excluído. Um novo arquivo de saída será recriado com a saída do comando mais recente.
Redirecionar a saída padrão grava para o mesmo arquivo
E se você não quiser substituir o mesmo arquivo? Outra opção é usar >> em vez de> redirecionar para um arquivo de saída. No caso deste exemplo, você digitaria:
DIR TEST.EXE >> MyOutput.TXT
Você verá a mesma saída (apenas o erro).
Mas, neste caso, em vez de substituir o arquivo de saída, este comando anexa a nova saída ao arquivo de saída existente.
Toda vez que você executa um comando e anexa a saída a um arquivo, ele escreverá a nova saída padrão no final do arquivo existente.
Redirecionar o erro padrão para um arquivo
Da mesma maneira que você pode redirecionar gravações de saída padrão para um arquivo, você também pode gerar o fluxo de erro padrão para um arquivo.
Para fazer isso, você precisará adicionar 2> até o final do comando, seguido pelo arquivo de erro de saída que você deseja criar.
Neste exemplo, você digitará o comando:
DIR TEST.exe> myOutput.txt 2> saída.errar
Isso envia o fluxo de saída padrão para o MyOutput.txt e o fluxo de erro padrão para saída.errar. O resultado é que nenhum fluxo de saída é exibido na janela do console.
No entanto, você pode ver as mensagens de erro digitando saída.errar. Isso abrirá o arquivo no seu visualizador de arquivo de texto padrão.
Como você pode ver, qualquer mensagem de erro do comando é emitida para o arquivo de erro. Assim como na saída padrão, você pode usar >> em vez.
Redirecionar todas as gravações de saída para o mesmo arquivo
Todas as abordagens acima resultam em vários arquivos. Um arquivo é para o fluxo de saída padrão e o outro é para o fluxo de erro padrão.
Se você deseja incluir esses dois saídas no mesmo arquivo, você também pode fazer isso. Para fazer isso, você só precisa redirecionar toda a saída para o mesmo arquivo usando o seguinte comando.
DIR TEST.exe 1> myoutput.txt 2> & 1
Veja como esse comando funciona:
- A saída padrão é direcionada para o arquivo de saída identificado pela saída número 1.
- A saída de erro padrão identificada pelo número 2 é redirecionada para o arquivo de saída identificado pelo número 1.
Isso anexará a saída de erro ao final da saída padrão.
Esta é uma maneira útil de ver toda a saída para qualquer comando em um arquivo.
Padrão de silenciamento ou fluxos de saída de erro
Você também pode desativar a saída padrão ou o erro padrão redirecionando a saída para um NUL em vez de um arquivo.
Usando o exemplo acima, se você deseja apenas saída padrão e nenhum erro padrão, poderá usar o seguinte comando:
DIR TEST.exe 1> myoutput.TXT 2> NUL
Isso resultará no mesmo arquivo de saída do primeiro exemplo acima, onde você redirecionou apenas a saída padrão, mas com este comando o erro não ecoará dentro do console. Ele também não criará um arquivo de log de erro.
Isso é útil se você não se importa com nenhum erro e não quiser que eles se tornem um incômodo.
Você pode executar qualquer um dos mesmos comandos de saída acima de um arquivo BAT e a saída dessa linha irá para o arquivo de saída que você especificar. Esta é uma maneira útil de ver se algum comando dentro de um arquivo de bat tinham erros quando eles tentaram correr.
- « Solucionar janelas penduradas durante o desligamento
- Centralize seus dados de planilha no Excel para impressão »