Archivierung mittels Batch auf File-Server
Hallo,
ich habe folgendes Problem:
ich habe ein kleine Batch-Programm geschrieben, das mir Druckaufträge auf dem Fileserver in separate Ordner verschiebt, diese Ordner sollen einmal im Monat archiviert werden.
Da ich aber auf dem FileServer kein WinRar, WinZip o.Ä. installieren kann, würde ich gern wissen ob man nicht auch irgendwie mit Windowseigenen Mitteln archivieren kann?
Danke schonmal im Vorraus!
ich habe folgendes Problem:
ich habe ein kleine Batch-Programm geschrieben, das mir Druckaufträge auf dem Fileserver in separate Ordner verschiebt, diese Ordner sollen einmal im Monat archiviert werden.
Da ich aber auf dem FileServer kein WinRar, WinZip o.Ä. installieren kann, würde ich gern wissen ob man nicht auch irgendwie mit Windowseigenen Mitteln archivieren kann?
Danke schonmal im Vorraus!
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 126431
Url: https://administrator.de/contentid/126431
Ausgedruckt am: 22.11.2024 um 14:11 Uhr
15 Kommentare
Neuester Kommentar
Hallo,
eines vorweg: etwas zu packen hat noch nichts mit einer Archivierung im rechtlichen Sinne der diversen Archivierungspflichten zu tun.
Ansonsten für Deinen Fall würde ich Dir zu 7Zip raten. Ist kostenlos und die Kommandozeilenversion brauchst Du nicht zu installieren.
eines vorweg: etwas zu packen hat noch nichts mit einer Archivierung im rechtlichen Sinne der diversen Archivierungspflichten zu tun.
Ansonsten für Deinen Fall würde ich Dir zu 7Zip raten. Ist kostenlos und die Kommandozeilenversion brauchst Du nicht zu installieren.
Zitat von @SWuser:
Von makecab habe ich auch schon gelesen. Leider sehe ich bei den
Parametern nicht so recht durch, die mir die Hilfe dazu anbietet (zu
packende Datei... Ziel... usw.)
Von makecab habe ich auch schon gelesen. Leider sehe ich bei den
Parametern nicht so recht durch, die mir die Hilfe dazu anbietet (zu
packende Datei... Ziel... usw.)
einfach mal 10 minuten mit dem befehl herumprobieren. Ist immer die beste möglichkeit, die parameter zu verstehen ;)
Alternativ gäbe es noch den befehl cabarc
Hallo SWuser,
von makecab hatte ich bis jetzt noch nix gehört, finde aber interessant, dass Windows ein Packprogramm an Bord hat. Also hab ich mich mal kurz damit beschäftigt. Wenn ich das msdn richtig verstehe, könntest du folgendes versuchen:
Grüße
rubberman
<edit:> unten aufgeführte Änderungen vorgenommen </edit>
von makecab hatte ich bis jetzt noch nix gehört, finde aber interessant, dass Windows ein Packprogramm an Bord hat. Also hab ich mich mal kurz damit beschäftigt. Wenn ich das msdn richtig verstehe, könntest du folgendes versuchen:
@echo off &setlocal
:: die Dateiendung
set ext=*.dat
:: die Verzeichnisse der Druckaufträge
set folder_1=c:\test1
set folder_2=c:\test2
set nr=0
for /f "delims== tokens=1*" %%a in ('set folder_') do set "folder=%%b" &call :sub
pause
exit
:sub
set /a nr+=1
pushd "%folder%"
:: Name kreieren
for /f "delims=. tokens=1-3" %%i in ("%date%") do set "name=Archiv_%%k%%j%%i_%nr%.cab"
:: .ddf Datei erstellen
chcp 1252>nul
>directives.ddf echo .Option Explicit
>>directives.ddf echo .Set CabinetNameTemplate=%name%
>>directives.ddf echo .Set CompressionType=MSZIP
>>directives.ddf echo .Set UniqueFiles="OFF"
>>directives.ddf echo .Set Cabinet=on
>>directives.ddf echo .Set DiskDirectory1=Temp
for /f "delims=" %%i in ('dir /a-d /b "%ext%"') do echo "%%i">>directives.ddf
chcp 850>nul
:: makecab aufrufen
makecab /f directives.ddf
:: aufräumen
del setup.inf
del setup.rpt
del directives.ddf
move "Temp\%name%" ".\%name%"
rd Temp
popd
goto :eof
Grüße
rubberman
<edit:> unten aufgeführte Änderungen vorgenommen </edit>
Hallo SWuser,
2 mögliche Ursachen fallen mir ein:
- Du hast Umlaute in den Dateinamen. In dem Fall müsste man die Codepage für das Schreiben in die Datei noch ändern. (mach ich mal eben oben)
- Die Dateiextension ist nicht richtig angegeben. Welche Dateiendung haben die Dateien und wie sieht die Zeile
set "ext=..."
bei dir aus?
Grüße
rubberman
2 mögliche Ursachen fallen mir ein:
- Du hast Umlaute in den Dateinamen. In dem Fall müsste man die Codepage für das Schreiben in die Datei noch ändern. (mach ich mal eben oben)
- Die Dateiextension ist nicht richtig angegeben. Welche Dateiendung haben die Dateien und wie sieht die Zeile
set "ext=..."
bei dir aus?
Grüße
rubberman