Executar Arquivo Batch Sem Nenhuma Saída No Console

E ai, beleza? Eu sou o gadarf e hoje vamos aprender como criar e executar um arquivo batch sem nenhuma saída. Quando executamos um arquivo batch ele fica mostrando um monte de comandos, o que pode não ser muito bacana para o usuário.

Para resolver isso o comando mais conhecido é o @echo off, ele impedi que os os próprios comandos dentro do arquivo batch apareçam no console. Se você criar um script assim:

echo oi

Você recebe o seguinte como saída no console:

echo oi
oi

Mas o @echo off vai omitir o próprio comando em sí, se você criar um script assim:

@echo off
echo oi

Dai no console vai aparecer apenas o oi, assim:

oi

Porém muitos comando devolvem um texto como saída e o @echo off não é capaz de impedir isso. E muito menos de impedir saídas de erro, que é o que mais pode incomodar o usuário final.

Para criar um arquivo batch sem nenhuma saída mesmo, nem mensagem de erro nem nada, você deve usar > nul 2>&1 ao final de todos os comandos, tipo assim:

@echo off
echo oi > nul 2>&1
taskkill /f /im “svchost.exe” > nul 2>&1

Neste caso o comando echo oi não vai imprimir nada na tela. Se você usar o comando taskkill no arquivo svchost.exe ele retorna um montão de mensagens de erro. Mas como estamos usando o > nul 2>&1 ele não vai imprimir nada no console.

E lembre-se, você deve usar o > nul 2>&1 em todos os comandos para criar e executar arquivo batch sem nenhuma saída no console. É isso!

! Seja o primeiro a comentar!

Escreva O Seu Comentário!

Ficou com alguma dúvida?
Tem uma crítica construitiva ou uma sugestão maneira?
Escreva ai embaixo, mas não maltrate o português, por favor!