Wildcard in batch files für Verzeichnisnamen

Hier dürfen auch unregistrierte Besucher posten.
Antworten
dos-beginner

Wildcard in batch files für Verzeichnisnamen

Beitrag von dos-beginner »

Hallo Leute,
Ich hoffe jemand kann mir helfen.
Ich erstelle gerade eine Batch Datei um automatisch diverse Dateien und Ordner von einer DVD in bestimmte Verzeichnisse auf dem PC zu kopieren.

Problem:
Die DVD wird regelmäßig erneuert, und ein Verzeichnis ändert dann ständig seinen Namen entsprechend der neuen Version der Daten.
z.B.: DVD Revision 1.46 = Verzeichnisname XXX_Rev146
Kommt jetzt Revison 1.50 raus, ändert sich der Verzeichnisname in XXX_Rev150

Z.Z. löse ich das Problem mit der Aufforderung zu einer manuellen Eingabe der Version
set /p revision="Please enter the Revison here: "
Und übergebe die Variabel an
xcopy e:\ZZZ\XXX_Rev%revision%\English\. c:\YYY\ZZZ\ /q/c/h/r/y 2>nul

Gibt es da keine elegantere Möglichkeit mit Wildcards ohne manuelle Eingabe?
Ich dachte da an sowas wie beim Kopieren von Dateinamen "copy XXX_*.dat"

Mit xcopy e:\ZZZ\XXX_Rev*\English\. c:\YYY\ZZZ\ /q/c/h/r/y 2>nul hat es nicht geklappt.

Danke schonmal für Eure Anregungen und Antworten.

LG
DOSferatu
DOS-Übermensch
Beiträge: 1220
Registriert: Di 25. Sep 2007, 12:05
Kontaktdaten:

Re: Wildcard in batch files für Verzeichnisnamen

Beitrag von DOSferatu »

Soweit mir bekannt ist, geht das standardmäßig nicht (jedenfalls nicht unter DOS).
Der Grund mag sein, daß Kopieren mit Wildcard in Verzeichnis ja dann quasi mehrere Zielverzeichnisse meint und von der Logik her müßte dann in alle Verzeichnisse kopiert werden, die der Wildcard entsprechen.

Die Länge der Verzeichnisnamen zeigen mir aber, daß Du offensichtlich in Windows BATCHst - eigentlich nicht direkt ein Thema für DOSforum.

Ich könnte Dir auf Wunsch ein Programm schreiben (unter DOS), das das Gewünschte tut (z.B. das neueste oder in Sortierung "höchste" Verzeichnis zu wählen und da rein zu kopieren). Es könnte dabei auch lange Dateinamen/Verzeichnisnamen unterstützen, wenn es unter Windows läuft - wäre allerdings nur brauchbar bis WinXP (32bit) oder wenn unter WinVista/7/8 im 32bit Mode laufen. Das könnte dann in die Batch eingebunden werden anstatt copy.

Aber vielleicht bietet ja die Windows-Batch selbst da etwas an.
Antworten