Tworzenie archiwów z użyciem Powershell’a

14 lipca 2015 at 11:41

Temat tworzenia archiwów (*.zip, *.7z) przewija się przy większości systemów, które generują masę logów zajmujących sporo miejsca na dyskach. Można z tym walczyć wykorzystując de-duplikację danych, można zasób kompresować ale i tak najczęściej sprowadza się do konieczności tworzenia archiwów, które zostaną zarchiwizowane na zasobach zewnętrznych.

Jak więc robić to automatycznie?

W przypadku, gdy pliki odkładane są w jednej lokalizacji – możemy spakować cały folder mając zainstalowany pogram 7-zip wykorzystując poniższa funkcję:

(Zakładając, że 7-zip jest zainstalowany w domyślnej ścieżce)

Później pozostaje tylko wykonanie kompresji:

Ale gdy nie chcemy instalować 7-zipa, albo pliki do archiwizacji mamy rozrzucone w wielu różnych lokalizacjach łatwiej i wygodniej będzie wykorzystać dobrodziejstwa powershella w Windows 2012 R2:

Wykorzystujemy tutaj proces, w którym w skrócie:

1. Tworzymy archiwum *.zip

2. Pobieramy interesujący nas log do zmiennej

3. Dodajemy log do utworzonego w pkt. 1 archiwum

Pozostaje tylko usunięcie zarchiwizowanego logu:

Oraz zaplanowanie w harmonogramie zadań częstotliwości wykonywania archiwizacji.

Enjoy :)