Por que meus arquivos .BAT no Windows 7 não são PAUSA corretamente?

5

Eu tenho andado brincando escrevendo arquivos em lote no meu computador há algum tempo, e estou confuso sobre porque o PAUSE não funciona como eu pensei (talvez eu esteja apenas fazendo o erro idk, apenas confuso).

Basicamente eu tenho:

@echo off
echo Hello!
pause
echo Hi again!
pause
echo HEY HEY!!
pause

e quando é executado, recebo:

Hello!
Press any key to continue...

Em seguida, pressiono apenas uma tecla e isso ocorre:

Hi again!
Press any key to continue...
HEY HEY!!
Press any key to continue...

Eu não entendo porque pula a segunda PAUSA ... Eu notei que se eu fosse fazer:

@echo off
echo Hello!
pause
echo Hi again!
pause
pause
echo HEY HEY!!
pause

então ele fará uma pausa em "Oi de novo!" oposta a executá-lo sem pausa (no entanto, ele irá imprimir "Pressione qualquer tecla para continuar ..." duas vezes consecutivas)

Eu estou realmente perdida e não posso continuar com a minha vida até saber por que ela faz isso:

    
por Ryan Bollinger 31.10.2014 / 17:45

1 resposta

0

Está funcionando como esperado. A instrução pause apenas aguarda a entrada. A única opção é ocultar o fato de estar aguardando uma tecla pressionada.

Quando executo o último arquivo de lote que você mostrou, vejo isso:

C:\Users\asdf\Desktop>more test.bat
@echo off
echo Hello!
pause
echo Hi again!
pause
pause
echo HEY HEY!!
pause

C:\Users\asdf\Desktop>test
Hello!
Press any key to continue . . .
Hi again!
Press any key to continue . . .
Press any key to continue . . .
HEY HEY!!
Press any key to continue . . .

Então estou achando difícil entender o que você está pedindo ...

    
por 31.10.2014 / 17:49