A resposta certa para qualquer versão do Windows feita na última década (incluindo o Windows XP especificado na pergunta). Obrigado :-)
woot
Na verdade, ele aguarda -1 - 99 999 segundos (~~ 1 dia3,7h | windows7) - o número especificado em /tOR para pressionar qualquer tecla - que pode ser desativado enviando /NOBREAKparam :)
O comando ping será executado por 10 segundos e toda a saída será redirecionada para o dispositivo NUL, o que significa que você não verá nenhuma saída do comando ping. Ele realmente funciona como um comando "dormir".
Editar: conforme mencionado nos comentários, SLEEPnão estará disponível em uma instalação normal. Você precisará de algo como o Windows 2003 Resource Kit ou algum outro truque para simulá-lo (o truque de ping que Bruno menciona), e as notas para fazer isso podem ser encontradas aqui .
Ou, se desejar, baixe o kit de recursos ou escreva um programa simples para dormir 10. No entanto, meu método significa que você pode movê-lo para outra máquina sem precisar baixar mais software novamente.
Eu não acho que choiceveio com o XP e mais tarde, ou pelo menos não o vi em nenhuma instalação recente.
1
Estou executando o vanilla Vista Home Premium neste laptop e funciona bem.
não existe "escolha" para o windows xp !!!
Kokbira #
0
Instale o Cygwin que disponibilizará sleepe crondisponibilizará para você (entre outras coisas).
abaixo, é uma maneira feia e bonita, um arquivo em lotes do Windows - consome muito tempo da CPU para não fazer nada, mas faz o que você quer e é tão bom.
SETLOCAL EnableDelayedExpansion
::in seconds
set time2stop=10
:loop1
arp -s 192.168.1.254 xx-xx-xx-xx-xx-xx
ipconfig /flushdns
for /f "tokens=1,2* delims=:" %%i in ("!time!") do (
set hour1=%%i
set min1=%%j
set sec1=%%k
)
for /f "tokens=1* delims=," %%i in ("!sec1!") do (
set isec1=%%i
)
:loop2
for /f "tokens=1,2* delims=:" %%i in ("!time!") do (
set hour2=%%i
set min2=%%j
set sec2=%%k
)
for /f "tokens=1* delims=," %%i in ("!sec2!") do (
set isec2=%%i
)
set /a delta=3600*(!hour2!-!hour1!)+60*(!min2!-!min1!)+(!isec2!-!isec1!)
if !delta! geq !time2stop! goto end2
goto loop2
:end2
@echo on
goto loop1
Outra maneira é fazer uma sequência de loop, por exemplo, repetir (para / l %% i in (1.1655535) não define nada = 0) algumas vezes e "calibrar" "quantas vezes" você precisa repetir o teste para resultar em 10 segundos, hahaha. mas é a maneira mais feia.
Kokbira #
você também pode criar algum lote do Windows para usar como funções (uma a tempo parcial, um para fazer a espera ...) mas será mais complexa ...
kokbira
Eu acho que causará um erro se você o estiver usando das 23:59:51 às 23:59:59 - nesse caso, o lote aguardará para sempre ... alguns "se" resolveriam o problema ...
kokbira
se você quiser testar por um tempo fixo (não um tempo + 10s), basta fazer "se% time% geq 10:30 goto end". a solução tornou-se complexo porque a soma ...
kokbira
É realmente horrível. Primeiro de tudo, ocupado esperando. desperdiçar ciclos de CPU desnecessariamente nunca é uma boa ideia (a menos que seja em hardware incorporado). Isso também parece não funcionar corretamente por volta da meia-noite.
Respostas:
isso faz 10 segundos. demora:
então tente o seguinte:
fonte
/t
OR para pressionar qualquer tecla - que pode ser desativado enviando/NOBREAK
param :)Tente este:
O comando ping será executado por 10 segundos e toda a saída será redirecionada para o dispositivo NUL, o que significa que você não verá nenhuma saída do comando ping. Ele realmente funciona como um comando "dormir".
fonte
Editar: conforme mencionado nos comentários,
SLEEP
não estará disponível em uma instalação normal. Você precisará de algo como o Windows 2003 Resource Kit ou algum outro truque para simulá-lo (o truque de ping que Bruno menciona), e as notas para fazer isso podem ser encontradas aqui .fonte
choice
que talvez não seja incluído por padrão. Vou investigar mais.A solução mais precisa executa ping no host inexistente uma vez e define o tempo limite
Mas gera tráfego parasita
fonte
Você pode usar o comando
for
eping
:Você pode
ping -n [secs+1] localhost >nul
esperar um certo tempo em segundos.fonte
goto
.Enganação:
Use este comando para pausar o lote por 10 segundos
escolha / n / t: c, <10> / c: cc
Agora, coloque-o em um loop sem fim no lote e pronto!
fonte
choice
veio com o XP e mais tarde, ou pelo menos não o vi em nenhuma instalação recente.Instale o Cygwin que disponibilizará
sleep
ecron
disponibilizará para você (entre outras coisas).fonte
abaixo, é uma maneira feia e bonita, um arquivo em lotes do Windows - consome muito tempo da CPU para não fazer nada, mas faz o que você quer e é tão bom.
fonte