Archiv Flag aller Dateien in definierten Pfaden lesen und die Pfade incl. Dateinamen in ein Log schreiben
Ziel ist: 7zip soll anschliessend in das log schauen und alle dort gelisteten Dateien packen.
Hallo,
ich beziehen mich mit dieser Frage auf folgenden Thread: Dynamische Liste aus INI lesen und die Werte für Variablen nutzen
Ich arbeite derzeit an dem dort geposteten Backupscript, möchte den Thread aber nicht mit anderen Fragen mischen. Hoffe das ist okay.
Zum Thema:
Ich habe also eine .ini Datei in der definierte Pfade stehen.
Diese sieht wie folgt aus:
[Gateway]
Standard_Gateway=>192.168.1.1
[Backup]
Backup_Directory=>C:\ziel
Backup_Command=>xcopy /s /c /d /e /h /i /r /y
[Directories to backup]
Folder=>C:\source1
Folder=>C:\source3
Folder=>C:\source2
Bevor nun mein xcopy irgendwelche Dateien wohin kopiert möchte ich in die gelisteten Ordner schauen und alle dort enthaltenen Dateien (und wenn möglich deren Unterordner, aber das ist zweitrangig) auf ihr Archivflag hin untersuchen. Alle Dateien, bei denen das Archivflag gesetzt wurde (Aufgrund von Änderungen etc.) sollen nun vom 7Zip in ein Archiv gepackt werden. Dieses Archiv wandert später auf ein Netzlaufwerk.
Derzeit stehen ich hier:
for /f "tokens=2 delims=>" %%i in ('set^|Find "Folder"import.ini') do call :GETATTRIB "%%i"
:GETATTRIB
set "Pfad=%~1"
cd %Pfad%
dir /b /A:A >> liste_mit_dateien_welche_ein A_Flag_haben.log
In der import.ini stehen die zu sichernden Pfade. Das ganze Funktioniert soweit, dass ich im ersten Ordner der Liste das .log mit den Dateien, welche ein A Flag haben, erzeugen kann. Diese Liste sollte jedoch im Arbeitsverzeichnis der .bat liegen und sie sollte die Pfade+dateinamen enthalten.
Bsp.:
C:\source\datei1
C:\source\datei2
... usw.
Ein weiterer Fehler den ich leider nicht lösen kann ist, dass in den weiteren Ordnern aus der Liste gar kein .log erzeugt wird.
Wie löse ich dieses Problem?
Der 7zip befehl sieht übrigens so aus:
7z a -t7z %BACKUPZIEL%%filename% -m0=BCJ -m1=LZMA:d=21 -ms -mmt @liste_mit_dateien_welche_ein A_Flag_haben.log
Grüße
Hallo,
ich beziehen mich mit dieser Frage auf folgenden Thread: Dynamische Liste aus INI lesen und die Werte für Variablen nutzen
Ich arbeite derzeit an dem dort geposteten Backupscript, möchte den Thread aber nicht mit anderen Fragen mischen. Hoffe das ist okay.
Zum Thema:
Ich habe also eine .ini Datei in der definierte Pfade stehen.
Diese sieht wie folgt aus:
[Gateway]
Standard_Gateway=>192.168.1.1
[Backup]
Backup_Directory=>C:\ziel
Backup_Command=>xcopy /s /c /d /e /h /i /r /y
[Directories to backup]
Folder=>C:\source1
Folder=>C:\source3
Folder=>C:\source2
Bevor nun mein xcopy irgendwelche Dateien wohin kopiert möchte ich in die gelisteten Ordner schauen und alle dort enthaltenen Dateien (und wenn möglich deren Unterordner, aber das ist zweitrangig) auf ihr Archivflag hin untersuchen. Alle Dateien, bei denen das Archivflag gesetzt wurde (Aufgrund von Änderungen etc.) sollen nun vom 7Zip in ein Archiv gepackt werden. Dieses Archiv wandert später auf ein Netzlaufwerk.
Derzeit stehen ich hier:
for /f "tokens=2 delims=>" %%i in ('set^|Find "Folder"import.ini') do call :GETATTRIB "%%i"
:GETATTRIB
set "Pfad=%~1"
cd %Pfad%
dir /b /A:A >> liste_mit_dateien_welche_ein A_Flag_haben.log
In der import.ini stehen die zu sichernden Pfade. Das ganze Funktioniert soweit, dass ich im ersten Ordner der Liste das .log mit den Dateien, welche ein A Flag haben, erzeugen kann. Diese Liste sollte jedoch im Arbeitsverzeichnis der .bat liegen und sie sollte die Pfade+dateinamen enthalten.
Bsp.:
C:\source\datei1
C:\source\datei2
... usw.
Ein weiterer Fehler den ich leider nicht lösen kann ist, dass in den weiteren Ordnern aus der Liste gar kein .log erzeugt wird.
Wie löse ich dieses Problem?
Der 7zip befehl sieht übrigens so aus:
7z a -t7z %BACKUPZIEL%%filename% -m0=BCJ -m1=LZMA:d=21 -ms -mmt @liste_mit_dateien_welche_ein A_Flag_haben.log
Grüße
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 106405
Url: https://administrator.de/contentid/106405
Ausgedruckt am: 23.11.2024 um 11:11 Uhr
2 Kommentare
Neuester Kommentar