Użytkownik "Yerine Ictimai" napisał w wiadomości grup
dyskusyjnych:ofcibs$i19$1@dont-email.me...
...
Podziel sie publicznie plz, wiecej ludzi chcialoby z tego skorzystac.
A ciekawe w czym ten batch napisales?
...
Skrypt wykonujący pełne archiwum:
)
@Rem
@Echo Off
Set MyDate=%date%
Set MyDate=%MyDate:/=_%
set Year=%MyDate:~0,4%
set MyYM=%MyDate:~0,7%
)
Title Kompresja folderu Work.
"C:\Program Files\7-zip\7zG.exe" a -mx9 -ssw
E:\Archiwum\%Year%\Work_%Year%.7z D:\Work
:IF ERRORLEVEL 1 (
: PAUSE
: EXIT %ERRORLEVEL%
:)
Title Kompresja elementów folderu użytkownika Ja.
"C:\Program Files\7-zip\7zG.exe" a -mx9 -ssw E:\Archiwum\%Year%\Ja_%Year%.7z
@C:\Users\Ja\Desktop\Files_Ja.txt
:IF ERRORLEVEL 1 (
: PAUSE
: EXIT %ERRORLEVEL%
:)
Title Kompresja elementów folderu publicznego i innych.
"C:\Program Files\7-zip\7zG.exe" a -mx9 -ssw
E:\Archiwum\%Year%\Public_%Year%.7z @C:\Users\Ja\Desktop\Files_P.txt
:IF ERRORLEVEL 1 (
: PAUSE
: EXIT %ERRORLEVEL%
:)
@Echo On
shutdown -s -t 300 -c "Trwa zamykanie systemu..." -f
Skrypt wykonujący archiwum różnicowe:
)
@Rem
@Echo Off
Set MyDate=%date%
Set MyDate=%MyDate:/=_%
set Year=%MyDate:~0,4%
set MyYM=%MyDate:~0,7%
)
Title Kompresja folderu Work.
"C:\Program Files\7-zip\7zG.exe" u -mx9 -ssw
E:\Archiwum\%Year%\Work_%Year%.7z -u- -up0q3r2x2y2z0w2!E:\Archiwum\%Year%\Work_%MyYM%.7z
D:\Work
:IF ERRORLEVEL 1 (
: PAUSE
: EXIT %ERRORLEVEL%
:)
Title Kompresja elementów folderu użytkownika Ja.
"C:\Program Files\7-zip\7zG.exe" u -mx9 -ssw
E:\Archiwum\%Year%\Ja_%Year%.7z -u- -up0q3r2x2y2z0w2!E:\Archiwum\%Year%\Ja_%MyYM%.7z
@C:\Users\Ja\Desktop\Files_Ja.txt
:IF ERRORLEVEL 1 (
: PAUSE
: EXIT %ERRORLEVEL%
:)
Title Kompresja elementów folderu publicznego i innych.
"C:\Program Files\7-zip\7zG.exe" u -mx9 -ssw
E:\Archiwum\%Year%\Public_%Year%.7z -u- -up0q3r2x2y2z0w2!E:\Archiwum\%Year%\Public_%MyYM%.7z
@C:\Users\Ja\Desktop\Files_P.txt
:IF ERRORLEVEL 1 (
: PAUSE
: EXIT %ERRORLEVEL%
:)
@Echo On
shutdown -s -t 300 -c "Trwa zamykanie systemu..." -f
Zawartość pliku Files_Ja.txt:
"C:\Users\Ja\Contacts"
"C:\Users\Ja\Desktop"
"C:\Users\Ja\Documents"
"C:\Users\Ja\Downloads"
"C:\Users\Ja\Favorites"
Zawartość pliku Files_P.txt:
"C:\Users\Public\Desktop"
"C:\ProgramData\Microsoft\Windows\Start Menu"
Trochę objaśnień:
W każdym z poleceń pakowania widać 3 ścieżki. Pierwsza to ścieżka do
programu 7zG.exe (wchodzi w skład pakietu 7-Zip), druga to ścieżka do
archiwum, trzecia to ścieżka do pakowanego folderu lub do pliku tekstowego
zawierającego ścieżki folderów do spakowania (jak widać ścieżkę do tego
pliku należy poprzedzić znakiem @.
Wystarczy zamiast moich ścieżek typu D:\Work itp. podstawić swoje.
Dwa pierwsze skrypty są to zwykłe BAT-y wykorzystujące komendy wiersza
poleceń programu 7-Zip.
W folderze E:\Archiwum co rok tworzy mi się folder o nazwie jak numer danego
roku.
W każdym z tych podfolderów są pliki, np.:
Ja_2017-02.7z
Ja_2017-03.7z
Ja_2017-04.7z
Ja_2017-05.7z
Ja_2017.7z
Public_2017-02.7z
Public_2017-03.7z
Public_2017-04.7z
Public_2017-05.7z
Public_2017.7z
Work_2017-02.7z
Work_2017-03.7z
Work_2017-04.7z
Work_2017-05.7z
Work_2017.7z
Pliki bez numeru miesiąca w nazwie to archiwa pełne wygenerowane przez
skrypt nr 1. Pliki z numerem miesiąca w nazwie to archiwa różnicowe
(względem archiwum pełnego, czyli z początku roku) wygenerowane przez skrypt
nr 2.
Podobnie można sobie zrobić np. pełne archiwum co miesiąc, a różnicowe
względem początku miesiąca codziennie. Takie coś też stosuję.
Wadą podanego rozwiązania jest, że wykonywanie skryptu zatrzyma się
poleceniu, które próbowało skompresować otwarty plik. W takim przypadku
okienko z paskiem postępu programu 7zG.exe nie zamyka się automatycznie,
tylko czeka, aż zrobi to użytkownik.
Wtedy komputer niestety nam się nie zamknie po wykonaniu archiwum (polecenie
"shutdown")
Pozdrawiam,
Marcin G.
---
Ta wiadomość została sprawdzona na obecność wirusów przez oprogramowanie
antywirusowe Avast.
https://www.avast.com/antivirus
|