sleep oder wait in Batch Dateien: pause cmd

Die Funktion wait oder sleep war in BATch Dateien standardmäßig nicht vorhanden.
Abhilfe schafft ein kleiner Umweg über den ping Command  

sleep or wait mit ping  

Befehl:

@ping -n 10 localhost> nul

 wartet in etwa 10 Sekunden (-n 10) und führt die Batchdatei dann weiter aus.

sleep-Befehl nachrüsten

sleep.cmd in C:\Windows\System32

@echo off
@ping localhost -n 2 > NUL
@ping localhost -n %1 > NUL

Windows Vista/7/8/10

seit Windows Vist gibt es den Befehl:

timeout

timeout /T 10 wartet 10 Sekunden, die Wartezeit kann mit einer beliebigen Taste übersprungen werden, um dies zu verhindern gibt es den Parameter: /nobreak
timeout /T 10 /nobreak

weiterführende Themen

  • Einführung, Grundlagen und erweitertes Wissen zu Windows Batch, siehe: Windows Batch
  • Der aktuelle Kommandozeileninterpreter, siehe: Windows PowerShell
positive Bewertung({{pro_count}})
Beitrag bewerten:
{{percentage}} % positiv
negative Bewertung({{con_count}})

DANKE für deine Bewertung!


veröffentlicht am 02.04.2010 von Bernhard
geändert am 12.09.2017 von Bernhard



Fragen / Kommentare


(sortiert nach Bewertung / Datum) [alle Kommentare(neueste zuerst)]

✍anonym
erstellt am 02.08.2019 05:08
User: Julian  
Anmerkung zum Seiten-Layout. Ich würde die Daumen der Bewertungsfunktion vertauschen, da man zuerst die negativen Daumen sieht und denkt, dass es die positiven sind und sich wundert, warum der Artikel so schlecht bewertet ist.

Nur eine kleine psychologische Sache, aber ich kann mir vorstellen, dass es vielen Menschen so geht, 
✍Bernhard
erstellt am 18.06.2020 05:06
danke für den Tipp, habe ich inzwischen geändert

erstellt von Bernhard

✍anonym
erstellt am 13.01.2016 09:01
User: Djimitrej 
"/t" kann man weglassen. "timeout 100" ist dasselbe wie "timeout /t 100". Getestet unter Windows 10 und Windows Server 2008.

✍anonym
erstellt am 27.02.2020 09:02
User: Leli 
Kann man das auch irgendwie machen ohne das dass angezeigt wird?
✍anonym
erstellt am 01.04.2020 09:04
>NUL lässt es unangezeigt

erstellt von anonym

✍anonym
erstellt am 24.08.2015 14:08
User: Franzy 
@Marcolinchen

Du musst "timeout" vor dem "goto main" schreiben, da du sonst nur eine endlose Textschleife bekommst :)

(Mein erster post kam irgendwie nicht an, oder?)

✍anonym
erstellt am 19.08.2015 10:08
User: Marcolinchen9867 
Okay nur das klappt bei mir nicht richtig, ich schicke mal mein Programm rein:

 @echo off
title Tic Tac Toe - Tipps and Tricks
 color C3
 
: main

 echo 1. Wiederholte Nameneingabe
echo.
echo Sicher kennst du es, dass es soooooo nevig ust, bei jeder Runde den Namen erneut einzugeben.
echo Dagegen gibt es eine Lösung: Nach der ersten Runde wird der Name gespeichert. Das heisst, wenn du
echo bei der zweiten Runde angelangst, musst du nur noch auf Enter zu dücken, und schwupps, 
echo lädt das Spiel deinen Namen, ganz ohne dass du ihn eingeben musstest.
echo 
echo.
echo.

goto main

timeout /T 10 /nobreak


start Menu.exe

exit

✍anonym
erstellt am 24.07.2015 21:07
User: El Turco 
vielen Dank für die wertvolle Info. Hast mich vom Last gerettet. 

✍anonym
erstellt am 01.05.2015 10:05
User: GdL56 
So nun bleibt das Fenster offen mit Pause oder timeout, aber es wird mir in jeder Befehlszeile der Pfad des Verzeichnises in der Ausgabe angezeigt.Na mal sehen ob ich selbst drauf komme?!
✍anonym
erstellt am 01.11.2020 13:11
Du musst @echo off am anfang deines skriptes eingeben
das versteckt den pfad

erstellt von anonym

✍anonym
erstellt am 23.04.2015 14:04
User: L 
Genau das hatte ich gesucht :-D

✍anonym
erstellt am 26.03.2015 19:03
User: Gabberpsycho 
timeout -1

Weiter mit Tastendruck ohne Zeitangabe

✍anonym
erstellt am 23.02.2015 16:02
User: noname12345 
Ja, mit >nul. So siehts dann aus: timeout /T 10 /nobreak >nul

✍anonym
erstellt am 05.10.2014 09:10
User:                 
wie kann man dafür sorgen das er nichts anzeigt bei timeout sozusagen unsichtbar zählt?

✍anonym
erstellt am 27.09.2014 14:09
User: nerf 
ping -n 10 localhost macht sich 10 anpingen

Wir verwenden Cookies, um Inhalte und Anzeigen zu personalisieren, Funktionen für soziale Medien anbieten zu können und die Zugriffe auf unsere Website zu analysieren. Außerdem geben wir Informationen zu Ihrer Nutzung unserer Website an unsere Partner für soziale Medien, Werbung und Analysen weiter. Details anzeigen.