„Windows“ paketinis scenarijus, skirtas atsarginėms duomenų kopijoms

Kompiuterių vartotojai, užaugę su pažangiais „Mac“ ir „Windows“ kompiuteriais, gali to nežinoti, tačiau kažkada, labai seniai, visi asmeniniai kompiuteriai buvo valdomi naudojant komandinės eilutės sąsają. Taip, ta sudėtinga komandų dėžutė jūsų „Windows“ įrenginyje buvo tiesiog vienintelis būdas, kuriuo dauguma žmonių kada nors bendraudavo su kompiuteriu. Komandinės eilutės sąsajos labai priklausė nuo mažų programų, vadinamų „skriptais“, kurios buvo operacinės sistemos komandų rinkiniai, naudojami bendroms užduotims atlikti.

Nors šiandieninių kompiuterių grafinės vartotojo sąsajos yra šviesmečiais sudėtingesnės ir lengviau naudojamos nei senosios komandų eilutės, vis dar yra senesnio kompiuterio valdymo metodo naudojimo būdų. Viena iš labiausiai paplitusių ir puikiai tinkamų komandinės eilutės scenarijaus programų yra duomenų atsarginė kopija. Komandinės eilutės scenarijai gali būti automatizuoti, kad jie būtų paleisti bet kuriuo metu be jokio žmogaus sąveikos, ir turi keletą apribojimų. Geriausia – jie yra integruota „Windows“ operacinės sistemos dalis.

Kodėl komandų eilutės scenarijai?

Kam naudoti komandinės eilutės scenarijų, kai yra ir komercinių, ir nemokamų atsarginių kopijų kūrimo programų? Na, komandų eilutės scenarijai turi daugybę unikalių pranašumų. Štai keletas iš jų:

  • Vietinės komandos : Ar gali būti geresnis būdas sukurti atsarginę duomenų kopiją, nei naudojant duomenis kuriančios programos teikiamas funkcijas? Nesvarbu, ar tai pati operacinė sistema, naudojant paprastą failo kopijavimo komandą, ar duomenų bazės komandą, kad būtų sukurtas atkuriamas dvejetainis failas, šaltinio programa geriausiai žino, kaip sukurti atsarginę kopiją.
  • Galutinis valdymas : Kadangi komandų eilutės scenarijus vykdomas pagal paprastą nuoseklią procedūrą, jūs tiksliai žinote, kas vyksta, ir galite lengvai pakeisti elgesį.
  • Greitas : Kadangi viskas yra gimtoji komanda, niekas negali būti interpretuojamas. Vėlgi, jūs naudojate pačios programos pateiktas komandas, todėl pridėtinės išlaidos yra minimalios.
  • Galingas : Dar nemačiau atsarginės užduoties, kurios negalima atlikti naudojant komandinės eilutės scenarijų... ir aš padariau keletą įdomių dalykų. Nors jums gali tekti atlikti kai kuriuos tyrimus ir atlikti bandymus bei klaidas, jei turite tikrai unikalių poreikių, paprastai įtaisytosios naudojamos scenarijų kalbos funkcijos ir ypatybės yra daugiau nei pakankamos.
  • Nemokama ir lanksti : Akivaizdu, kad komandinės eilutės scenarijus nieko nekainuoja (nepriklausomai nuo jo kūrimo laiko), todėl galite nukopijuoti savo scenarijus į bet kokį skaičių mašinų ir sistemų be jokios laiko ar išlaidų. Palyginkite tai su atsarginės programinės įrangos licencijų įsigijimo išlaidomis keliuose serveriuose ir (arba) staliniuose kompiuteriuose.

Greita atsarginių kopijų paketo scenarijaus apžvalga

Daugelis žmonių niekada neišmoko naudoti komandų eilutės scenarijų, ir tai yra laikoma „juoduoju menu“. Tačiau iš tikrųjų tai yra gana paprasta išmokti. Norėdamas parodyti komandinės eilutės galią, pateikiu paprastą Windows paketinį scenarijų, kurį galite naudoti kurdami svarbių duomenų atsarginę kopiją. Šis konfigūruojamas ir pritaikomas scenarijus nereikalauja jokių žinių (ar noro mokytis) apie Windows paketinį scenarijus, bet jei nuspręsite, kad norite sužinoti daugiau apie Windows paketinį scenarijų, šis scenarijus bus gera pradžia. .

Ką daro atsarginis scenarijus:

  1. Sukuria visas arba kasdienes prieaugines (apibūdinimą žr. toliau) failų ir aplankų, kuriuos nurodote atskirame konfigūracijos tekstiniame faile (žr. toliau), atsargines kopijas.
    • Pavadinus aplanką, sukuriamos to aplanko ir visų poaplankių atsarginės kopijos.
    • Kai failas pavadintas, sukuriama tik to failo atsarginė kopija.
  2. Suspaudžia (suglaudina) atsargines failų kopijas. Nukopijavus visus failus, kurių atsarginė kopija bus sukurta, jie suglaudinami, kad būtų sutaupyta vietos. Kad tai veiktų, jūsų sistemoje turi būti įdiegtas 7-Zip.
  3. Nurodo suspausto failo datą ir perkelia jį į saugojimo vietą. Suglaudinus atsarginės kopijos failus, gautam archyvui suteikiamas failo pavadinimas pagal dabartinę datą ir perkeliamas į sukonfigūruotą saugojimo vietą, pvz., išorinį diską arba tinklo vietą.
  4. Išsivalo po savęs. Atlikus visas užduotis, paketinis scenarijus išvalo visus sukurtus laikinuosius failus.

Reikalavimai:

Windows 2000/XP/2003/Vista arba naujesnė versija

7-Zip (nemokama)

Konfigūracijos failas:

Konfigūracijos failas yra tiesiog tekstinis failas, kuriame yra failai ir aplankai, kurių atsarginę kopiją reikia sukurti, kiekvienoje eilutėje įvedamas vienas atsarginės kopijos elementas. Šis failas privalo būti pavadintas „BackupConfig.txt“ ir būti tame pačiame aplanke kaip ir atsarginis scenarijus. Štai BackupConfig.txt failo pavyzdys (atminkite, kad simbolis „#“ pirmoje eilutėje rodo, kad eilutė yra komentaras; komentarai visada ignoruojami, kai vykdomas scenarijus):

# Įveskite failų ir aplankų pavadinimus, po vieną eilutėje.

C:Dokumentai ir nustatymaiJason FaulknerDesktop C:Documents and SettingsJason FaulknerMano dokumentaiSvarbūs failai C:ScriptsBackupScript.bat

Aukščiau pateiktame pavyzdyje būtų sukurtos „Windows“ naudotojo Jasono Faulknerio darbalaukio (ir visų darbalaukio aplankų), aplanko „Svarbūs failai“ Mano dokumentuose (ir visų aplankų „Svarbūs failai“) ir failo „BackupScript.bat“ atsarginės kopijos. kataloge C:Scripts.

Atsarginių kopijų tipai:

  • Visa atsarginė kopija: visa visų failų ir aplankų kopija (įskaitant poaplankius) yra įtraukta į atsarginę kopiją.
  • Laipsniškas atsarginis kopijavimas: kai pateikiamas aplankas, tik jame sukurti arba modifikuoti failai dabartinė data yra

    atsarginė kopija. Pateikus failą, jo atsarginė kopija visada sukuriama, neatsižvelgiant į tai, kada jis buvo modifikuotas.

Duomenų atsarginės kopijos Windows paketinis scenarijus

Noriu pabrėžti, kad šis scenarijus yra labai paprastas, nes viskas, ką jis daro, yra atsarginių kopijų kūrimas naudojant paprastą failo kopiją. Yra keletas konfigūravimo parinkčių, kurias galite nustatyti:

  • Atsarginės kopijos saugojimo vieta, kurioje saugomi suspausti atsarginės kopijos failai.
  • Savaitės diena, kai vykdoma visa atsarginė kopija (bet kurią kitą dieną būtų daroma laipsniška atsarginė kopija).
  • Vieta, kur jūsų kompiuteryje įdiegtas 7-Zip. Scenarijus automatiškai nustatomas ieškoti numatytojoje vietoje.

Jei turite kokių nors pasiūlymų ar funkcijų užklausų, komentuokite toliau. Labai norėčiau parašyti tolesnį šio įrašo straipsnį, kuriame pateikiamas atnaujintas scenarijus, pagrįstas skaitytojo įvestimi. Jei jums reikia instrukcijų, kaip „naudoti“ šį scenarijų arba nustatyti suplanuotą užduotį, peržiūrėkite nuorodas po scenarijaus šaltiniu.

Be daugiau dėmesio, štai:

Pastaba: Kadangi kabutės žemiau rodomos neteisingai (ir dėl to scenarijus gali sujaukti), po scenarijumi įtraukiau paprasto teksto nuorodą, kurią galite naudoti norėdami gauti tikslų šaltinį, iš kurio norite kopijuoti.

@ECHO OFF REM BackupScript REM versija 1.01, atnaujinta: 2008-05-21 REM, Jason Faulkner (straipsniai[-at-]132solutions.com) REM Atlieka visas arba laipsniškas vartotojo sukonfigūruotų aplankų ir failų atsargines kopijas. REM naudojimas --- REM > BackupScript SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION REM --- Konfigūracijos parinktys --- REM Aplanko vieta, kurioje norite saugoti gautą atsarginės kopijos archyvą. REM Šis aplankas turi egzistuoti. Nedėkite „'' gale, jis bus pridėtas automatiškai. REM Galite įvesti vietinį kelią, išorinio disko raidę (pvz., F:) arba tinklo vietą (pvz., \serverbackups) SET BackupStorage=C:Backup REM Kurią savaitės dieną norite sukurti visą atsarginę kopiją? REM Įveskite vieną iš šių: sekmadienis, pirmadienis, antradienis, trečiadienis, ketvirtadienis, penktadienis, šeštadienis, * REM, bet kuri savaitės diena, išskyrus nurodytą toliau, veiks atsarginę kopiją. REM Jei įvesite '*', visa atsarginė kopija bus paleista kiekvieną kartą. SET FullBackupDay=* REM Vieta, kurioje jūsų kompiuteryje įdiegtas 7-Zip. REM Numatytoji reikšmė yra aplanke „7-Zip“ jūsų Program Files kataloge. NUSTATYTI InstallLocationOf7Zip=%ProgramFiles%7-Zip REM +---------------------------------------- --------------------------------+ REM | Nieko čia nekeiskite, nebent žinote, ką darote. | REM +------------------------------------------------- -----------------------+ REM naudojimo kintamieji. SET exe7Zip=%InstallLocationOf7Zip%7z.exe SET dirTempBackup=%TEMP%atsarginės kopijos SET filBackupConfig=BackupConfig.txt REM patvirtinimas. JEI NĖRA %filBackupConfig% ( ECHO Nerasta konfigūracijos failo, trūksta: %filBackupConfig% GOTO End ) JEI NĖRA "%exe7Zip%" ( ECHO 7-Zip neįdiegtas vietoje: %dir7Zip% ECHO Atnaujinkite katalogą, kuriame Įdiegtas 7-Zip. GOTO Pabaiga ) REM atsarginės kopijos kintamieji. FOR /f "tokens=1,2,3,4 delims=/ " %%a IN ('data /t') DO ( NUSTATYTI DayOfWeek=%%a SET NowDate=%%d-%%b-%%c NUSTATYTI FileDate=%%b-%%c-%%d ) IF {%FullBackupDay%}=={*} NUSTATYTI FullBackupDay=%DayOfWeek% IF /i {%FullBackupDay%}=={%DayOfWeek%} ( NUSTATYTI txtBackup =Full SET swXCopy=/e ) ELSE ( SET txtBackup=Papildomas SET swXCopy=/s /d:%FileDate% ) ECHO Pradedama kopijuoti failus. JEI NĖRA "%dirTempBackup%" MKDIR "%dirTempBackup%" FOR /f "skip=1 tokens=*" %%A IN (%filBackupConfig%) DO ( NUSTATYTI Current=%%~A IF NOT EXIST "!Current! " ( ECHO ERROR! Nerasta: !Current! ) ELSE ( ECHO kopijavimas: !Current! SET Destination=%dirTempBackup%!Current:~0,1!%%~pnxA REM Nustatykite, ar įrašas yra failas ar katalogas. JEI "%%~xA"=="" ( REM katalogas. XCOPY "!Current!" "!Paskirtis!" /v /c /i /g /h /q /r /y %swXCopy% ) ELSE ( REM failas. COPY /v /y "!Dabartinis!" "!Paskirtis!" ) ) ) ECHO Failų kopijavimas baigtas. ECHO. SET BackupFileDestination=%BackupStorage%Backup_%FileDate%_%txtBackup%.zip REM Jei atsarginės kopijos failas yra, pašalinkite jį naujojo failo naudai. JEI YRA "%BackupFileDestination%" DEL /f /q "%BackupFileDestination%" ECHO Suglaudinami failai, kurių atsarginės kopijos yra sukurtos. (Naujas langas) REM Suspauskite failus naudodami 7-Zip žemesnio prioriteto procese. PRADĖTI "Suglaudinama atsarginė kopija. NE UŽDARYTI" /belownormal /laukti "%exe7Zip%" a -tzip -r -mx5 "%BackupFileDestination%" "%dirTempBackup%" ECHO Suglaudinti atsarginės kopijos failai. ECHO. ECHO valymas. JEI YRA "%dirTempBackup%" RMDIR /s /q "%dirTempBackup%" ECHO. : Pabaiga ECHO baigta. ECHO. ENDLOCAL

Paprasto teksto šaltinis yra čia: atsarginė kopija

Jei jums reikia pagalbos pradedant diegti šį scenarijų, čia yra keletas nuorodų, kurios jums padės:

  • Kaip sukurti paketinį failą
  • Kaip sukurti „Windows“ suplanuotą užduotį

Tai tas pats scenarijus, kurį naudoju kasdien kurdamas atsarginę kompiuterio atsarginę kopiją (žinoma, su keliais pakeitimais), todėl žinau, kad jis veikia labai gerai. Tikiuosi, kad tai bus naudinga.

Mėgautis!