Windowsin eräkomentosarja tietojen varmuuskopiointiin

Tietokoneen käyttäjät, jotka ovat kasvaneet kehittyneiden Mac- ja Windows-tietokoneiden kanssa, eivät ehkä ole tietoisia siitä, mutta kerran, kauan sitten, kaikkia henkilökohtaisia ​​​​tietokoneita ohjattiin komentoriviliittymällä. Kyllä, se kömpelö komentoruutu Windows-koneellasi oli kirjaimellisesti ainoa tapa, jolla useimmat ihmiset koskaan olivat vuorovaikutuksessa tietokoneen kanssa. Komentoriviliitännät luottivat voimakkaasti pieniin ohjelmiin, joita kutsutaan "skripteiksi", jotka olivat kokoelmat käyttöjärjestelmän komentoja, joita käytettiin yleisten tehtävien suorittamiseen.

Vaikka nykyajan PC-tietokoneiden graafiset käyttöliittymät ovat valovuosia kehittyneempiä ja helpompia käyttää kuin vanhat komentorivit, vanhemmalle tietokoneen ohjaustavalle löytyy edelleen käyttöä. Yksi yleisimmistä ja parhaiten soveltuvista sovelluksista komentorivikomentosarjalle on tietojen varmuuskopiointi. Komentorivikomentosarjat voidaan automatisoida suorittamaan milloin tahansa ilman ihmisen vuorovaikutusta, ja niillä on vain vähän rajoituksia. Mikä parasta – ne ovat sisäänrakennettu osa Windows-käyttöjärjestelmää.

Miksi komentorivikomentosarjat?

Miksi käyttää komentorivikomentosarjaa, kun siellä on sekä kaupallisia että ilmaisia ​​varmuuskopiointiohjelmia? No, komentorivin komentosarjoilla on useita ainutlaatuisia etuja. Tässä on muutamia niistä:

  • Alkuperäiset komennot : Mikä olisikaan parempi tapa varmuuskopioida tiedot kuin käyttää tiedot luovan ohjelman kautta saatavilla olevia toimintoja? Olipa kyseessä sitten käyttöjärjestelmä itse yksinkertaisen tiedoston kopiointikomennon tai tietokantakomennon avulla palautettavan binaaritiedoston tuottamiseksi, lähdeohjelma tietää parhaiten, kuinka varmuuskopioida itsensä.
  • Ultimate Control : Koska komentorivikomentosarja noudattaa yksinkertaista vaiheittaista menettelyä, tiedät tarkalleen, mitä tapahtuu, ja voit helposti muokata toimintaa.
  • Nopeasti : Koska kaikki on alkuperäistä käskyä, mikään ei ole tulkinnan kohteena. Jälleen käytät ohjelman itsensä antamia komentoja, joten ylimääräiset kustannukset pidetään minimissä.
  • Voimakas : En ole vielä nähnyt varmuuskopiointitehtävää, jota ei voida suorittaa komentorivikomentosarjalla… ja olen tehnyt joitain hauskoja juttuja. Vaikka saatat joutua tekemään tutkimusta ja kokeilemaan erehdyksiä, jos sinulla on todella ainutlaatuisia tarpeita, tyypillisesti käyttämäsi skriptikielen sisäänrakennetut toiminnot ja ominaisuudet ovat enemmän kuin riittäviä.
  • Ilmainen ja joustava : On selvää, että komentorivikomentosarja ei maksa mitään (sen kehittämisajan ulkopuolella), joten voit kopioida komentosarjasi mihin tahansa koneeseen ja järjestelmään ilman aikaa tai kustannuksia. Vertaa tätä kustannuksiin, jotka aiheutuvat varmuuskopiointiohjelmistojen lisenssien ostamisesta useille palvelimille ja/tai pöytäkoneille.

Nopea katsaus varmuuskopiointisarjaan

Useimmat ihmiset eivät ole koskaan oppineet käyttämään komentorivikomentosarjaa, ja sitä pidetään jossain määrin "musta taiteena". Se on kuitenkin itse asiassa melko yksinkertainen asia oppia. Osoittaakseni komentorivin tehon tarjoan yksinkertaisen Windowsin eräkomentosarjan, jota voit käyttää tärkeiden tietojesi varmuuskopiointiin. Tämä konfiguroitava ja muokattavissa oleva komentosarja ei vaadi tietoja (tai halukkuutta oppia) Windowsin eräkomentosarjakielestä, mutta jos päätät, että haluat oppia lisää Windowsin eräkomentosarjasta, tämä komentosarja on hyvä aloituspaikka. .

Mitä varmuuskopioskripti tekee:

  1. Luo täydet tai päivittäiset lisävarmuuskopiot (katso määritelmä alla) tiedostoista ja kansioista, jotka määrität erillisessä asetustekstitiedostossa (katso alla).
    • Kun kansio on nimetty, kansio ja kaikki alikansiot varmuuskopioidaan.
    • Kun tiedosto on nimetty, vain tämä tiedosto varmuuskopioidaan.
  2. Pakkaa (zip) varmuuskopioidut tiedostot. Kun kaikki varmuuskopioitavat tiedostot on kopioitu, ne pakataan tilan säästämiseksi. Järjestelmään on asennettava 7-Zip, jotta tämä toimii.
  3. Päivämäärä pakatun tiedoston ja siirtää sen tallennuspaikkaan. Kun varmuuskopiotiedostot on pakattu, tuloksena olevalle arkistolle annetaan tiedostonimi nykyisen päivämäärän mukaan ja siirretään sitten määritettyyn tallennuspaikkaan, kuten ulkoiseen asemaan tai verkkosijaintiin.
  4. Siivoaa itsensä jälkeensä. Kun kaikki tehtävät on suoritettu, eräkomentosarja puhdistaa kaikki luomansa väliaikaiset tiedostot.

Vaatimukset:

Windows 2000/XP/2003/Vista tai uudempi

7-Zip (se on ilmainen)

Asetustiedosto:

Asetustiedosto on yksinkertaisesti tekstitiedosto, joka sisältää varmuuskopioitavia tiedostoja ja kansioita, joka on syötetty yksi varmuuskopiokohde riviä kohden. Tämä tiedosto on pakko on nimetty "BackupConfig.txt" ja sijaita samassa kansiossa kuin varmuuskopioskripti. Tässä on esimerkki BackupConfig.txt-tiedostosta (huomaa, että #-merkki ensimmäisellä rivillä osoittaa, että rivi on kommentti; kommentit ohitetaan aina, kun komentosarja suoritetaan):

# Anna tiedostojen ja kansioiden nimet, yksi kullekin riville.

C:Documents and SettingsJason FaulknerDesktop C:Documents and SettingsJason FaulknerOmat asiakirjatTärkeät tiedostot C:ScriptsBackupScript.bat

Yllä oleva esimerkki varmuuskopioi Windows-käyttäjän Jason Faulknerin työpöydän (ja kaikki työpöydällä olevat kansiot), "Important Files" -kansion Omien asiakirjojen sisällä (ja kaikki "Important Files" -kansion kansiot) ja tiedoston "BackupScript.bat" sisällä. C:Scripts-hakemistoon.

Varmuuskopioiden tyypit:

  • Täysi varmuuskopio: Täydellinen kopio kaikista tiedostoista ja kansioista (mukaan lukien alikansiot) sisältyy varmuuskopioon.
  • Inkrementaalinen varmuuskopiointi: Kun kansio toimitetaan, vain hakemistossa luodut tai muokatut tiedostot nykyinen päivämäärä ovat

    varmuuskopioitu. Kun tiedosto toimitetaan, se varmuuskopioidaan aina riippumatta siitä, milloin sitä on muokattu.

Tietojen varmuuskopiointi Windowsin eräkomentosarja

Haluan korostaa, että tämä skripti on hyvin yksinkertainen, sillä se luo vain varmuuskopioita käyttämällä yksinkertaista tiedostokopiota. Voit määrittää joitakin konfigurointivaihtoehtoja:

  • Varmuuskopioiden tallennuspaikka, johon tuloksena olevat pakatut varmuuskopiotiedostot tallennetaan.
  • Viikonpäivä, jolloin täydellinen varmuuskopiointi suoritetaan (joka muu päivä suorittaa asteittaisen varmuuskopion).
  • Sijainti, jossa 7-Zip on asennettu tietokoneellesi. Skripti asetetaan automaattisesti etsimään oletussijaintia.

Jos sinulla on ehdotuksia tai ominaisuuspyyntöjä, kommentoi alle. Haluaisin todella tehdä jatkoartikkelin tälle viestille, joka sisältää päivitetyn käsikirjoituksen lukijan syötteen perusteella. Jos tarvitset ohjeita tämän skriptin "käyttöön" tai ajoitetun tehtävän määrittämiseen, katso komentosarjalähteen alla olevia linkkejä.

Pidemättä puhetta, tässä se on:

Merkintä: Koska lainaukset eivät näy oikein alla (ja sen seurauksena ne voivat sotkea käsikirjoituksen), olen lisännyt skriptin alle tekstilinkin, jonka avulla voit saada tarkan lähteen kopioitavaksi.

@ECHO OFF REM BackupScript REM-versio 1.01, päivitetty: 21.5.2008 REM kirjoittanut Jason Faulkner (articles[-at-]132solutions.com) REM Varmuuskopioi käyttäjän määrittämät kansiot ja tiedostot kokonaan tai asteittain. REM-käyttö--- REM > BackupScript SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION REM ---Määritysasetukset--- REM Kansion sijainti, johon haluat tallentaa tuloksena olevan varmuuskopio-arkiston. REM Tämän kansion on oltava olemassa. Älä laita ''-merkkiä loppuun, se lisätään automaattisesti. REM Voit syöttää paikallisen polun, ulkoisen aseman kirjaimen (esim. F:) tai verkkosijainnin (esim. \serverbackups) SET BackupStorage=C:Backup REM Millä viikonpäivällä haluat tehdä täyden varmuuskopion? REM Anna jokin seuraavista: su, ma, ti, ke, to, pe, la, * REM mikä tahansa muu viikonpäivä kuin alla määritetty varmuuskopiointi suoritetaan. REM Jos kirjoitat '*', täydellinen varmuuskopio suoritetaan joka kerta. SET FullBackupDay=* REM Sijainti, jossa 7-Zip on asennettu tietokoneellesi. REM Oletusarvo on 7-Zip-kansiossa Program Files -hakemistossa. SET InstallLocationOf7Zip=%ProgramFiles%7-Zip REM +---------------------------------------- --------------------------------+ REM | Älä muuta tässä alla mitään, ellet tiedä mitä olet tekemässä. | REM +-------------------------------------------------- -----------------------+ REM-käyttömuuttujat. SET exe7Zip=%InstallLocationOf7Zip%7z.exe SET dirTempBackup=%TEMP%backup SET filBackupConfig=BackupConfig.txt REM-vahvistus. JOS EI OLE OLEMASSA %filBackupConfig% ( ECHO Asetustiedostoa ei löydy, puuttuu: %filBackupConfig% GOTO End ) JOS EI OLE OLEMASSA "%exe7Zip%" ( ECHO 7-Zip ei ole asennettu sijaintiin: %dir7Zip% ECHO Päivitä hakemisto, jossa 7-Zip on asennettu GOTO End ) REM Backup muuttujat. FOR /f "tokens=1,2,3,4 delims=/ " %%a IN ('päivämäärä /t') DO ( SET DayOfWeek=%%a SET NowDate=%%d-%%b-%%c SET FileDate=%%b-%%c-%%d ) JOS {%FullBackupDay%}=={*} SET FullBackupDay=%DayOfWeek% IF /i {%FullBackupDay%}=={%DayOfWeek%} ( SET txtBackup =Täysi SET swXCopy=/e ) ELSE ( SET txtBackup=Inkrementaalinen SET swXCopy=/s /d:%FileDate% ) ECHO Aloittaa tiedostojen kopioinnin. JOS EI OLE "%dirTempBackup%" MKDIR "%dirTempBackup%" FOR /f "skip=1 tokens=*" %%A IN (%filBackupConfig%) DO ( SET Current=%%~A JOS EI OLE "!Nykyinen! " ( ECHO ERROR! Ei löydy: !Current! ) ELSE ( ECHO Kopioidaan: !Nykyinen! SET Destination=%dirTempBackup%!Current:~0,1!%%~pnxA REM Määritä, onko merkintä tiedosto vai hakemisto. JOS "%%~xA"=="" ( REM-hakemisto. XCOPY "!Nykyinen!" "!Kohde!" /v /c /i /g /h /q /r /y %swXCopy% ) MUU ( REM-tiedosto. KOPIO /v /y "!Nykyinen!" "!Kohde!" ) ) ) ECHO Tiedostojen kopiointi on valmis. KAIKU. SET BackupFileDestination=%BackupStorage%Backup_%FileDate%_%txtBackup%.zip REM Jos varmuuskopiotiedosto on olemassa, poista se uuden tiedoston hyväksi. JOS OLEMASSA "%BackupFileDestination%" DEL /f /q "%BackupFileDestination%" ECHO Varmuuskopioitujen tiedostojen pakkaaminen. (Uusi ikkuna) REM Pakkaa tiedostot 7-Zipillä alemman prioriteetin prosessissa. ALOITA "Varmuuskopion pakkaaminen. ÄLÄ SULJE" /belownormal /odota "%exe7Zip%" a -tzip -r -mx5 "%BackupFileDestination%" "%dirTempBackup%" ECHO Varmuuskopioitujen tiedostojen pakkaus on valmis. KAIKU. ECHO Siivous. JOS OLEMASSA "%dirTempBackup%" RMDIR /s /q "%dirTempBackup%" ECHO. :End ECHO valmis. KAIKU. ENDLOCAL

Pelkkä tekstilähde löytyy täältä:backup

Jos tarvitset apua tämän skriptin käyttöönoton aloittamisessa, tässä on pari linkkiä, jotka auttavat sinua:

  • Kuinka luoda erätiedosto
  • Kuinka luoda Windows ajoitettu tehtävä

Tämä on sama skripti, jota käytän varmuuskopioimaan tietokonettani päivittäin (tietysti parilla muutoksella), joten tiedän sen toimivan erittäin hyvin. Toivottavasti löydät sen hyödylliseksi.

Nauttia!