Autor Beitrag
Xabitire
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 114

Win Xp, Win Vista
D6 PE, D7 PE
BeitragVerfasst: Do 06.11.08 16:22 
Hi Leute,

ich würde mir gerne eine Batch-Datei basteln, die mir ein paar Dateien sichert.

Und zwar hab ich einen Ordner, in dem eine variable Zahl an Unterordnern liegt in welchen jeweils wieder eine bestimmte Datei liegt, die ich sichern möchte. Diese bestimmte Datei hat in allen Ordnern den selben Namen und ist vom selben Typ. Daher müsste sie bei der Sicherungskopie auch umbenannt werden, am besten nach dem Ordnernamen, in dem sie liegt. Das ist aber nicht unbedingt nötig. Also das eigentliche Problem ist, das man den Namen der übergeordneten Ordner in denen die Daten liegen nicht kennt.

Also ich hab mir das so nach folgendem Schema vorgestellt:

ausblenden Quelltext
1:
copy \*\BestimmteDatei.Endung C:\Sicherung\*.Endung					


Lässt sich sowas überhaupt per Batch realisieren? Und wenn ja, wie?

MFG Blackbird8690
JüTho
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2021
Erhaltene Danke: 6

Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
BeitragVerfasst: Do 06.11.08 18:17 
Wenn Du die Dateien in getrennten Verzeichnissen behalten würdest, wäre es kein Problem:
ausblenden Quelltext
1:
xcopy C:\Quellverzeichnis\MeineDatei.cs C:\Sicherung\ /f /s /e /y /d					

Ich weiß nicht mehr, warum ich all diese Parameter genommen habe.
/s verwendet alle Unterverzeichnisse.
/e verarbeitet auch leere Verzeichnisse.
Einer der Parameter erzeugt bei Bedarf den Verzeichnispfad.
/y (oder ein anderer) kopiert nur neuere Dateien.

Das Umbenennen wäre mit Zwischenspeicherung auch möglich, ist aber ziemlich kompliziert. (Ich hatte vor Urzeiten mal mehrere Batchdateien kombiniert, bei denen Datum/Uhrzeit in den Dateinamen eingebunden wurde.)

Jürgen
delphi10
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 447
Erhaltene Danke: 2

W2K, XP, Vista64, Win7 64
RAD-Studio 2010
BeitragVerfasst: Do 06.11.08 18:48 
user profile iconXabitire hat folgendes geschrieben Zum zitierten Posting springen:
Also das eigentliche Problem ist, das man den Namen der übergeordneten Ordner in denen die Daten liegen nicht kennt.

Nachfrag: Also du kennst das Root des Laufwerkes und die Dateinamen. Alles was an Directories dazwischen liegt, ist unbekannt?

_________________
Salus populi suprema lex esto
Xabitire Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 114

Win Xp, Win Vista
D6 PE, D7 PE
BeitragVerfasst: Fr 07.11.08 16:59 
Hab es jetzt selbst hinbekommen! :)

Und so sieht das Ganze dann aus:

ausblenden Quelltext
1:
for /D %%i in (*) do copy "%%i"\BestimmteDatei.Endung "%%i".Endung					


Es ist doch immer wieder erstaunlich was man eigentlich schon alles mit einfachen Batch-Dateien machen kann!

auf jeden Fall Danke für die Hilfe!

MFG Blackbird8690