Ostatnio rozpracowałem 7-zip. Ma on ciekawą funkcję tworzenia paczki różnicowej. Można by to wykorzystać do tworzenia paczek z nowymi trasami. Robi się to w sposób następujący:
7z u c:\stara.7z -u- -up0q3x2z0!c:\nowa.7z *Znaczenie poszczególnych członów w wierszu polecenia:
7z | - wywołanie archiwizera |
u | - update, czyli modyfikacja paczki |
c:\stara.7z | - nazwa istniejącej paczki (może być .rar, .zip, ale nie testowałem) |
-u- | - flaga oznaczająca zakaz modyfikowania starej paczki |
-up0q3x2z0!c:\nowa.7z | - flagi obsługi plików oraz nazwa nowej paczki (wykrzyknik rozdziela) |
* | - pliki do dodania |
Flagi obsługi plików (domyślne ustawienie):
p - (1) plik istnieje w paczce, ale nie wymieniony jako do dodania (nie łapie się na
*)
q - (1) plik istnieje w paczce, ale nie na dysku
r - (2) pliku nie ma w paczce, ale jest na dysku
x - (1) plik w paczce jest nowszy niż na dysku
y - (2) plik w paczce jest starszy niż ten na dysku
z - (1) plik w paczce jest identyczny z plikiem na dysku
w - (2) nie daje się określić, które plik jest nowszy (ta sama data, różna wielkość)
Akcja obsługi pliku:
0 - ignoruj plik (nie dodawaj do paczki)
1 - skopiuj plik (ze starej paczki do nowej)
2 - spakuj plik (dodaj do nowej paczki)
3 - usuwaj plik przy rozpakowywaniu (tylko w formacie 7z)