Script Examples vbscript autoit php batch

Ablauf Schleifen und Sprungmarken batch datei

(2)
Artikel
bewerten
(7)

errorlevel, existiert eine Datei, goto, ...

Sprungmarken:
Beispiel:
@echo off
goto springe
echo hallo
:springe
echo gesprungen
pause

Ausgabe: gesprungen (ech hallo wird ignoriert da mit dem Befehl "goto springe" die Zeile "echo hallo" übersprungen wird)

TEST: existiert eine Datei?
if exist %datei.txt
Beispiel:
@echo off
if exist %datei.txt goto existiert
echo Datei nicht gefunden!
goto ENDE
:existiert
echo die Datei existiert!
:ENDE
pause

Ausgabe: wenn die Datei datei.txt existiert: die Datei existiert! wenn die Datei datei.txt nicht existiert: Datei nicht gefunden!

Errorlevel:
jeder Befehl gibt bestimmte errorlevel zurück:
meisst bedeutet der errorlevel 1, daß der Befehl nicht erfolgreich war:
Beispiel:
@echo off
xcopy c:\so c:\so2
if errorlevel 1 goto error
goto ende
:error
echo das kopieren war nicht erfolgreich!
:ende
pause

in diesem Beispiel wird das Verzeichnis c:\so in c:\so2 kopiert,
wenn jetzt z.B. so nicht existiert, schreibt die Batch-Datei: "das kopieren war nicht erfolgreich!"

for Schleife
For %%f In (c:\batch\*.bat c:\bat\*.bat) Do Copy %%f
Erklärung: diese Zeile kopiert alle Dateien im Ordner c:\batch mit Dateiändung .bat nach c:\bat

if
if "alle"=="%1" del *.tmp
Erklärung: %1 ist eine beim Aufruf auf an die Batch-Datei angehängte Variable:
z.B. batchdatei.cmd Variable. Wenn also in diesem Beispiel an die Batchdatei alle angehängt wird: batchdatei.cmd alle dann werden alle Dateien mit Endung .tmp aus dem aktuellen Verzeichnis gelöscht.

möglich wäre auch eine Abfrage mit if not 1==2 ... (also wenn 1 nicht 2 ist, stimmt in diesem Fall)

warte auf Task
:LOOP
echo in der Schleife
@ping -n 10 localhost> nul
TaskList|Find "Taskname" >NUL || If Errorlevel 1 Goto WEITER
Goto LOOP
:WEITER


Erklärung:
mit @ping -n 10 localhost> nul wird in der Schleife 10 Sekunden gewartet,
die Befehlszeile TaskList|Find "Taskname" >NUL || If Errorlevel 1 Goto WEITER verlässt die Schleife erst, wenn der Task: "Taskname" nich mehr läuft
<<< sleep oder wait in Batch Dateien (cmd) Praktische Beispiele mit Batch >>>


neue Themen

Stichwortsuche auf dieser Seite:
03.09.2010 16:03 zZ 16 Leser online
Powered by cms.libe.net 2004-2010