Bat und vbs Datein?
Hallo,
ich möchte mit meiner bat datei verschiedene andere dateien öffnen (bat und vbs) aber es soll sich nicht alles gleichzeitig öffnen sonder z.B. im abstand von 10sek ist das möglich?
2 Antworten
https://stackoverflow.com/questions/38935882/sleep-function-in-a-batch-script
You can use bash's
timeout
command.
For example:
@echo off
echo Hi
timeout /t 1 /nobreak > nul
/t
- is not mandatory
- 1 is the amount of second(s) to wait
/nobreak
- ensures the user can't skip the wait
> nul
- redirects output to nothing, so you don't see anything
Erstmal:
Verwende für Windows-Batchdateien die Endung .cmd . .bat versetzt dem Kommandointerpreter in einen alten Dos-kompatiblen Emulationsmodus, welcher mit einem fehlerhaften Errorhandling arbeitet. https://stackoverflow.com/a/148991
Für den Aufruf von vbs-Dateien gibt es zwei Modi:
Konsol-Modus:
cscript "meineDatei.vbs" optionale Parameter
...der Output de von WScript.Echo "Hallo Welt" erfolgt in die Console.
Window-Modus:
wscript "meineDatei.vbs" optionale Parameter
der Output erfolgt in temporäre Dialogfenster.
demo.cmd
@echo off
rem erzeuge kleines VBScript.
echo WScript.Echo "Hallo Welt">"test.vbs"
echo Das Folgende wird vom VBS in die Console geschrieben:
cscript /nologo "test.vbs"
timeout 2 &rem 2 sekunden warten
echo VBS im Dialog Modus
wscript "test.vbs"
echo fertig
pause
Eine andere Batch ruft man mit
call "andereBatch.cmd" optionale Parameter
auf.
batch2.cmd
echo ich bin Batch2
batch1.cmd
@echo off
echo ich rufe Batch2
call "batch2.cmd"
echo wieder in batch1
pause
Ruft man eine andere Batch ohne call auf kehrt diese nicht zum Aufrufer zurück!
Allerdings kannst Du Dir das verwalten mehrerer Batchedateien sparen, wenn du Subroutinen verwendest
@echo off
echo ich bin die Hauptroutine
call :Subroutne1
echo wieder in Hauptroutine
pause
exit /b
:Subroutne1
echo ich bin die subroutine
exit /b