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!