Die richtige Antwort für jede Windows-Version, die im letzten Jahrzehnt erstellt wurde (einschließlich Windows XP, das in der Frage angegeben ist). Danke :-)
woot
Es wartet tatsächlich -1 - 99 999 Sekunden (~~ 1day3,7h | windows7) - die in /tOR angegebene Zahl zum Drücken einer beliebigen Taste - die durch Senden von /NOBREAKparam :) ausgeschaltet werden kann
Der Ping-Befehl wird 10 Sekunden lang ausgeführt, und die gesamte Ausgabe wird an das NUL-Gerät umgeleitet. Dies bedeutet, dass Sie keine Ausgabe des Ping-Befehls sehen. Es funktioniert in der Tat wie ein "Schlaf" -Befehl.
Bearbeiten: Wie in den Kommentaren erwähnt, SLEEPwird in einer normalen Installation nicht verfügbar sein. Sie benötigen etwas wie das Windows 2003 Resource Kit oder einen anderen Trick, um es zu simulieren (der Ping-Trick, den Bruno erwähnt). Hinweise dazu finden Sie hier .
Schlaf ist nicht standardmäßig enthalten. Benötigen Sie das Resource Kit oder etwas, um dies zu bekommen?
marcc
Was genau brauche ich
Ist es nicht Ich hätte schwören können, dass es etwas war, auf das ich zählen konnte, aber ich denke, dass choicees möglicherweise nicht standardmäßig enthalten ist. Ich werde es mir genauer ansehen.
1
Unter Windows muss nichts anderes installiert werden, um einen Sleep-Befehl zu "fälschen". Schauen Sie sich meine Antwort als Beispiel an.
1
Genauere Lösung Pingen Sie einmal einen nicht vorhandenen Host und legen Sie eine Zeitüberschreitung fest
Wenn Sie möchten, können Sie auch das Resource Kit herunterladen oder ein einfaches Programm für den Ruhezustand 10 schreiben. Meine Methode bedeutet jedoch, dass Sie es auf einen anderen Computer verschieben können, ohne erneut mehr Software herunterladen zu müssen.
Ich habe nicht gedacht, dass choiceXP und höher verfügbar sind, oder zumindest habe ich es bei den letzten Installationen nicht gesehen.
1
Auf diesem Laptop läuft Vanilla Vista Home Premium, und es funktioniert einwandfrei.
Es gibt keine "Wahl" für Windows XP !!!
Kokbira
0
Installieren Sie Cygwin , die machen sleepund cronIhnen zur Verfügung (unter anderem).
Im Folgenden ist es sowohl eine hässliche als auch eine schöne Art und Weise, eine Windows-Batchdatei - es verbraucht viel CPU-Zeit, um nichts zu tun, aber es tut, was Sie wollen und ist so schön.
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
Eine andere Möglichkeit besteht darin, eine Schleifensequenz auszuführen, z. B. das Wiederholen (für / l %% i in (1,1,65535) setze nichts = 0) einige Male und "Kalibrieren", "wie oft" Sie das Testen wiederholen müssen Ergebnis in 10 Sekunden, hahaha. aber es ist der hässlichste Weg.
Kokbira
Sie können auch einige Windows-Stapel erstellen, die als Funktionen verwendet werden sollen (eine, um die Zeit zu teilen, eine, um das Warten zu erledigen ...), aber es wird komplexer sein ...
kokbira
Ich denke, es wird einen Fehler verursachen, wenn Sie es von 23:59:51 bis 23:59:59 verwenden - in diesem Fall wird der Stapel für immer warten ... einige "Wenn's" würden das Problem lösen ...
Kokbira
Wenn Sie für eine feste Zeit (keine Zeit + 10 Sekunden) testen möchten, können Sie einfach "if% time% geq 10:30 do goto end" ausführen. Die Lösung wurde komplex, weil die Summe ...
Kokbira
Es ist eigentlich schrecklich. Vor allem beschäftigt warten. Eine unnötige Verschwendung von CPU-Zyklen ist niemals eine gute Idee (außer bei eingebetteter Hardware). Dies scheint auch um Mitternacht nicht richtig zu funktionieren.
Antworten:
das ergibt eine 10 sek. verzögern:
Also versuche folgendes:
quelle
/t
OR angegebene Zahl zum Drücken einer beliebigen Taste - die durch Senden von/NOBREAK
param :) ausgeschaltet werden kannProbier diese:
Der Ping-Befehl wird 10 Sekunden lang ausgeführt, und die gesamte Ausgabe wird an das NUL-Gerät umgeleitet. Dies bedeutet, dass Sie keine Ausgabe des Ping-Befehls sehen. Es funktioniert in der Tat wie ein "Schlaf" -Befehl.
quelle
Bearbeiten: Wie in den Kommentaren erwähnt,
SLEEP
wird in einer normalen Installation nicht verfügbar sein. Sie benötigen etwas wie das Windows 2003 Resource Kit oder einen anderen Trick, um es zu simulieren (der Ping-Trick, den Bruno erwähnt). Hinweise dazu finden Sie hier .quelle
choice
es möglicherweise nicht standardmäßig enthalten ist. Ich werde es mir genauer ansehen.Genauere Lösung Pingen Sie einmal einen nicht vorhandenen Host und legen Sie eine Zeitüberschreitung fest
Aber es erzeugt Parasitenverkehr
quelle
Sie können den Befehl
for
und verwendenping
:Mit können Sie
ping -n [secs+1] localhost >nul
eine bestimmte Zeit in Sekunden warten.quelle
goto
.Betrügen:
Verwenden Sie diesen Befehl, um den Stapel für 10 Sekunden anzuhalten
Auswahl / n / t: c, <10> / c: cc
Legen Sie es jetzt in eine Endlosschleife in der Reihe und voilà!
quelle
choice
XP und höher verfügbar sind, oder zumindest habe ich es bei den letzten Installationen nicht gesehen.Installieren Sie Cygwin , die machen
sleep
undcron
Ihnen zur Verfügung (unter anderem).quelle
Im Folgenden ist es sowohl eine hässliche als auch eine schöne Art und Weise, eine Windows-Batchdatei - es verbraucht viel CPU-Zeit, um nichts zu tun, aber es tut, was Sie wollen und ist so schön.
quelle