dbernsee
Goto Top

Variable in For Schleife ohne Inhalt

Hallo,

ich habe folgendes Problem...

im Ordner C:\Temp liegt eine datei nag.bmp ...ich möchte mir einer For schleife abfragen ob diese datei noch dort existiert (bzw. umbenannt wurde) oder nicht!

Mein Versuch:

for /f "tokens=1" %%a in ('dir /b "C:\Temp\"^|findstr /x "nag.bmp"') do if not "%%a"=="nag.bmp" echo Alarm Datei ist weg!

bzw.

for /f "tokens=1" %%a in ('dir /b "C:\Temp\"^|findstr /x "nag.bmp"') do if "%%a"=="" echo Alarm Datei ist weg!

oder

for /f "tokens=1" %%a in ('dir /b "C:\Temp\"^|findstr /x "nag.bmp"') do if not defined %%a echo Alarm Datei ist weg!


funktioniert leider alles nicht weil die For Schleife ein nicht vorhandenen inhalt einer Variable scheinbar nicht akzeptiert!

man könnte zwar statt dem findstr den find /c (count) benutzen...der kennt aber den parameter /x (exakte übereinstimmung) leider nicht!

Das Problem ist ...das was der findstr dort ausgibt... ist von der For schleife leider nicht auswertbar!


mfg
db

Content-ID: 197097

Url: https://administrator.de/contentid/197097

Ausgedruckt am: 25.11.2024 um 06:11 Uhr

dirk
dirk 16.01.2013 um 17:26:36 Uhr
Goto Top
Hallo dbernsee,

muß es unbedingt eine for-Schleife sein?

Ein einfaches "if not exist c:\temp\nag.bmp echo Alarm"
würde das doch auch tun.

Grüße,

Dirk
pieh-ejdsch
pieh-ejdsch 16.01.2013 um 17:49:35 Uhr
Goto Top
moin db,

wenn Du eine Fehlerausgabe Haben willst, gibt find auch gleich einen passenden Fehler mit aus.
find "" "C:\Temp\nag.bmp" >nul &&echo Alles OK.

Gruß Phil
dbernsee
dbernsee 17.01.2013 um 11:45:26 Uhr
Goto Top
Hallo,

Danke für die schnelle Antwort...mir ist gestern Abend (nachdem ich den Eintrag hier erstellt hab) noch die selbe Idee gekommen face-smile ...aber trotzdem danke! <- Manchmal denkt man viel zu kompliziert!

Ich hatte das Problem (mit der For Schleife ohne Wert) früher schon mal.. in einem anderen Zusammenhang...aber irgenwie hab ich das damals wohl auch anders gelöst...egal!


Gruß
db