Dateiname auf vorkommen von Zeichen prüfen
Hallo,
mal wieder eine Batch-Frage von mir:
eine Schleife durchsucht Ordner/Unterordner nach Dateien.
Es werden bestimmte Parameter (z. B. Endung) gecheckt und darauf reagiert.
Das Problem: An beliebiger Stelle des Dateinamens können die Zeichen "XY" vorkommen. Wenn dies so ist, soll mit 'set do=1' eine bestimmte Routine gestartet werden.
Aber wie zur Hölle finde ich raus, ob der Dateiname diese Zeichen enthält? Selber überlegen hilft nicht (wie so oft), googeln aber leider auch nicht.
Danke für Eure Hilfe!
Jürgen
mal wieder eine Batch-Frage von mir:
eine Schleife durchsucht Ordner/Unterordner nach Dateien.
Es werden bestimmte Parameter (z. B. Endung) gecheckt und darauf reagiert.
Das Problem: An beliebiger Stelle des Dateinamens können die Zeichen "XY" vorkommen. Wenn dies so ist, soll mit 'set do=1' eine bestimmte Routine gestartet werden.
Aber wie zur Hölle finde ich raus, ob der Dateiname diese Zeichen enthält? Selber überlegen hilft nicht (wie so oft), googeln aber leider auch nicht.
Danke für Eure Hilfe!
Jürgen
Please also mark the comments that contributed to the solution of the article
Content-Key: 576218
Url: https://administrator.de/contentid/576218
Printed on: May 8, 2024 at 04:05 o'clock
5 Comments
Latest comment
@echo off
for /f "delims=" %%a in ('dir /b /s /a-d "D:\Ordner\blablub\*XY*"') do echo Tu was mit "%%a"
Selber überlegen hilft nicht (wie so oft)
🐟 Ja nee, is klar ... wat für'n Stuss.Zitat von @icepick1661:
Ich habe ja bereits mit einer For-Schleife eine Datei in Bearbeitung, also ein Variable %%i ist schon gefüllt. Bei diesem Dateinamen will ich prüfen, ob das "XY" darin vorkommt.
Hätte einfach gereicht die zu posten ...Ich habe ja bereits mit einer For-Schleife eine Datei in Bearbeitung, also ein Variable %%i ist schon gefüllt. Bei diesem Dateinamen will ich prüfen, ob das "XY" darin vorkommt.
Mit deiner Schleife hab ich jetzt ein bisschen rumprobiert - sie bezieht sich aber nicht auf die Variable %%i. Die zweite Schleife läuft als Schleife in der Schleife - die letzte Klammer schließt die erste Schleife.
Ist doch Jacke wie Hose ob %%i oder %%a es ist nur ein unterschiedlicherBuchstabe.Du hättest auch einfach deine Schleife posten können, aber ist ja Glaskugel-Feierdach ne....
Hier für den Content einer Schleife in der %%i die Laufvariable ist (for-Gedöhns weggelassen fehlt uns ja von dir) :
echo %%~nxi|findstr /ilc:"XY" >nul 2>&1 && (
echo Found XY in %%i
) || (
echo Not found XY in %%i
)
Wenn du damit jetzt auch nix anfangen kannst, dann bleibt wohl nur noch das Brecheisen für das Brett...
Viel Spaß beim Eierschaukeln noch.