1
resposta

resultado inesperado ao executar bat

@echo off 
rem limpando a tela do terminal
cls
set /p nome=Digite seu nome completo =
set /p email=Digite seu e-mail principal =
pause
echo ..................................................................................
echo Seu nome é = %nome% e seu e-mail = %email%

Após pressionar qualquer tecla referente ao pause, ele não exibe o resultado do ultimo echo, apenas se fecha.

1 resposta

Olá Rodrigo, bom dia, tudo bem?

O uso do comando puase, apresenta a mensagem padrão de "aperte qualquer botão para continuar" e em seguida encerra o terminal, isto é padrão deste comando. Caso deseje colocar uma interrupção antes de imprimir o nome, podes seguir da seguinte forma:

@echo off 
rem limpando a tela do terminal
cls
set /p nome=Digite seu nome completo =
set /p email=Digite seu e-mail principal =

rem agora vou botar uma mensagem antes de imprimir nome e email

echo esta eh uma mensagem (sem acentos para nao dar problema na impressao)
echo aperte qualquer tecla para continuar
pause >nul
echo ..................................................................................
echo Seu nome é = %nome% e seu e-mail = %email%

echo Aperte qualquer tecla para sair...
pause >nul

Perceba que utilizei do " >nul " após o pause, isso faz com que a saída do pause vá para um dispositivo nulo, não imprimindo a mensagem padrão e não encerrando o .bat

Espero ter ajudado!

  • "Na medida em que a humanidade existir, sempre aspiraremos a alcançar o impossível." - Spock

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software