rimanari
Goto Top

Verzeichnis auf Vorhandensein eines Dateityps überprüfen

Ich möchte in einem Batch-Skript überprüfen, ob ein bestimmter Dateityp im Ordner vorhanden ist.

Mein Ansatz: if exist Z:\*.reg goto END

Das soll beim Vorhandensein einer REG-Datei zu END springen. Funktioniert jedoch leider nicht. Jemand einen Vorschlag?

Content-ID: 205765

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

Ausgedruckt am: 26.11.2024 um 00:11 Uhr

rubberman
rubberman 28.04.2013 um 15:28:02 Uhr
Goto Top
Hallo @RimaNari, willkommen im Forum.

Zunächst ein freundlicher Hinweis auf Regel 1, Punkt 1 face-wink

Was dein Problem angeht, so sehe ich keinen Grund, warum es nicht funktionieren sollte. Bei mir im Test gibt es keine Probleme.
Hast du in der Realität Leerzeichen, Sonderzeichen oder Umlaute im Pfad?

Grüße
rubberman
Endoro
Endoro 28.04.2013 um 15:32:41 Uhr
Goto Top
Hallo RimaNari,

geht nach diesem Muster:

dir *.reg >nul 2>1 && echo OK || echo fail

Gruss!
rubberman
rubberman 28.04.2013 um 15:36:11 Uhr
Goto Top
Hallo Endoro,

Korrigiere noch mal eben:
2>&1

Grüße
rubberman
Endoro
Endoro 28.04.2013 aktualisiert um 16:29:01 Uhr
Goto Top
Hallo rubberman,
bei mir gehts auch ohne face-smile warum auch nicht?

€dit: dafür entsteht die Datei "1", auch nicht schlecht! Danke!

€dit2: genau genommen müsste man es so machen:
dir /a-d *.reg >nul 2>&1 && echo OK || echo fail


Gruss!
RimaNari
RimaNari 28.04.2013 um 17:11:22 Uhr
Goto Top
Zitat von @rubberman:
Zunächst ein freundlicher Hinweis auf Regel 1, Punkt 1 face-wink

Du hast recht, entschuldigung. Ich bin leider des öfteren genervt, wenn ich was mit Batch mache. Batch ist einfach... umständlich und unglaublich unnötig kompliziert.

Ahhh... Offenbar hat mein genervt Sein mich blind machen lassen: Eine Abfrage nach *.reg spuckt logischerweise auch eine ehemalige REG-Datei aus, die ich testweise in *.regx umbenannt habe. Sorry für eure für mich jetzt unnötigen Mühen!
Wobei... Wie ermittle ich nur REG-Dateien, und nicht auch Dateien nach dem Muster *.reg* ? Ich denke, dass das "dir *.reg" aus dem zweiten Vorschlag auch beispielsweise eine Datei "*.registry" mit reinbekommt, oder?
bastla
bastla 28.04.2013 um 17:33:57 Uhr
Goto Top
Hallo RimaNari und willkommen im Forum!
Ich denke, dass das "dir *.reg" aus dem zweiten Vorschlag auch beispielsweise eine Datei "*.registry" mit reinbekommt, oder?
Das lässt sich doch leicht (von Dir) testen ...

Um tatsächlich nur Dateien mit ".reg" am Ende zu erhalten, kannst Du "findstr" verwenden:
dir /a-d *.reg|findstr /i /e "\.reg"
Grüße
bastla
RimaNari
RimaNari 29.04.2013 um 20:24:54 Uhr
Goto Top
Super, funktioniert perfekt! Danke schön!

Hat sich alles erledigt, kann geschlossen werden.