Anonim

Pengguna komputer yang telah membesar dengan komputer Mac dan Windows yang canggih mungkin tidak menyedarinya, tetapi sekali dahulu, semua komputer peribadi dikawal menggunakan antara muka baris arahan. Ya, kotak perintah yang clunky pada mesin Windows Anda digunakan secara harfiah satu-satunya cara kebanyakan orang pernah berinteraksi dengan komputer. Antara muka baris arahan sangat bergantung kepada program-program kecil yang dipanggil 'skrip', yang merupakan koleksi perintah sistem operasi yang digunakan untuk melaksanakan tugas-tugas biasa.

Walaupun antara muka pengguna grafik pada hari ini PC adalah tahun cahaya yang lebih canggih dan mudah digunakan daripada baris arahan lama, masih digunakan untuk kaedah lama mengawal komputer anda. Salah satu aplikasi yang paling biasa, dan sesuai, untuk skrip baris perintah ialah sandaran data. Skrip baris perintah boleh diautomatikkan untuk dijalankan pada bila-bila masa tanpa sebarang interaksi manusia, dan mempunyai beberapa batasan. Yang paling penting - mereka adalah bahagian terbina dalam sistem operasi Windows.

Mengapa Skrip Talian Perintah?

Mengapa menggunakan skrip baris arahan apabila terdapat program sandaran komersil dan percuma di luar sana? Nah, skrip baris arahan mempunyai beberapa kelebihan yang unik. Berikut adalah beberapa daripada mereka:

  • Perintah Native : Apa cara yang lebih baik untuk membuat sandaran data daripada dengan menggunakan fungsi yang disediakan melalui program yang mencipta data? Sama ada ini adalah sistem pengendalian itu sendiri melalui perintah salinan fail mudah atau arahan pangkalan data untuk menghasilkan fail binari yang boleh dipulihkan, program sumber tahu cara terbaik untuk membantunya.
  • Kawalan Muktamad : Oleh kerana skrip baris perintah mengikuti prosedur langkah demi langkah yang mudah, anda tahu dengan tepat apa yang sedang berlaku dan boleh mengubah suai tingkah laku dengan mudah.
  • Cepat : Oleh kerana segala-galanya adalah perintah asli, tiada apa-apa yang tertakluk kepada tafsiran. Sekali lagi, anda menggunakan arahan yang disediakan oleh program itu sendiri, jadi overhead disimpan minimum.
  • Kuasa : Saya masih belum melihat tugas sandaran yang tidak dapat dicapai melalui skrip baris perintah … dan saya telah melakukan beberapa perkara funky. Walaupun anda mungkin perlu melakukan penyelidikan dan percubaan dan kesilapan jika anda mempunyai keperluan yang sangat unik, biasanya fungsi dan ciri terbina dalam bahasa skrip yang anda gunakan adalah lebih daripada mencukupi.
  • Percuma dan Fleksibel : Sudah tentu, skrip baris perintah tidak membebankan apa-apa (di luar masa untuk membangunkannya), sehingga anda dapat menyalin skrip anda ke sejumlah mesin dan sistem dengan sedikit waktu atau biaya. Bandingkan ini dengan kos pembelian lesen untuk perisian sandaran pada beberapa pelayan dan / atau mesin desktop.

Tinjauan Ringkas Skrip Kumpulan Backup

Kebanyakan orang tidak pernah belajar menggunakan skrip baris arahan, dan ia dianggap agak "seni hitam". Walau bagaimanapun, ia sebenarnya adalah satu perkara yang mudah untuk dipelajari. Untuk menunjukkan kekuatan baris arahan, saya menyediakan skrip batch Windows mudah yang boleh anda gunakan untuk membuat sandaran data penting anda. Skrip ini boleh dikonfigurasi dan disesuaikan tidak memerlukan sebarang pengetahuan (atau kesediaan untuk belajar) dari bahasa skrip batch Windows, tetapi jika anda membuat keputusan untuk mengetahui lebih lanjut mengenai skrip batch Windows, anda akan mendapati skrip ini menjadi tempat permulaan yang baik .

Apakah skrip sandaran yang dilakukan:

  1. Membuat tambahan atau peningkatan harian (lihat di bawah untuk definisi) sandaran fail dan folder yang anda tentukan dalam fail teks konfigurasi berasingan (lihat di bawah).
    • Apabila folder bernama, folder itu dan semua sub-folder disandarkan.
    • Apabila fail bernama, hanya fail itu disandarkan.
  2. Memampatkan (zip) fail yang disandarkan. Selepas semua fail yang disandarkan disalin, mereka dimampatkan untuk menjimatkan ruang. 7-Zip diperlukan untuk dipasang pada sistem anda untuk berfungsi.
  3. Tarikh fail dimampatkan dan bergerak ke lokasi storan. Selepas fail sandaran dimampatkan, arkib yang dihasilkan diberikan nama fail mengikut tarikh semasa dan kemudian dipindahkan ke lokasi simpanan yang dikonfigurasi, seperti pemacu luaran atau lokasi rangkaian.
  4. Membersihkan selepas itu sendiri. Selepas semua tugas selesai, skrip batch membersihkan semua fail sementara yang dibuat.

Keperluan:
Windows 2000 / XP / 2003 / Vista atau lebih baru
7-Zip (percuma)

Fail konfigurasi:
Fail konfigurasi hanyalah fail teks yang mengandungi fail dan folder untuk sandaran, memasuki satu item sandaran setiap baris. Fail ini mesti dinamakan "BackupConfig.txt" dan berada dalam folder yang sama dengan skrip sandaran. Berikut adalah contoh fail BackupConfig.txt (nota, aksara "#" pada baris pertama menunjukkan bahawa baris adalah komen; komen sentiasa diabaikan semasa skrip berjalan):

# Masukkan nama fail dan folder, satu per baris.
C: \ Documents and Settings \ Jason Faulkner \ Desktop C: \ Documents and Settings \ Jason Faulkner \ My Documents \ Files Penting C: \ Scripts \ BackupScript.bat

Contoh di atas akan membuat sandaran Windows desktop pengguna Jason Faulkner (dan semua folder di desktop), folder yang dipanggil "File Penting" di dalam My Documents (dan semua folder di dalam "Fail Penting") dan fail "BackupScript.bat" di dalam direktori C: \ Scripts.

Jenis sandaran:

  • Cadangan penuh: Salinan lengkap semua fail dan folder (termasuk subfolder) disertakan dalam sandaran.
  • Backup tambahan: Apabila folder disediakan, hanya fail yang dibuat atau diubah suai pada tarikh semasa
    disokong. Apabila fail disediakan, ia sentiasa disandarkan, tanpa mengira apabila ia diubahsuai.

Skrip Batch Windows Backup Data

Saya ingin menekankan skrip ini sangat asas, kerana semua itu adalah membuat sandaran dengan menggunakan salinan fail mudah. Terdapat beberapa pilihan konfigurasi yang boleh anda tetapkan:

  • Lokasi penyimpanan sandaran di mana fail sandaran yang dimampatkan disimpan.
  • Hari dalam seminggu sandaran penuh dijalankan (mana-mana hari lain akan menjalankan sandaran tambahan).
  • Lokasi di mana 7-Zip dipasang pada komputer anda. Skrip secara automatik ditetapkan untuk melihat di lokasi lalai.

Sekiranya anda mempunyai cadangan atau permintaan ciri, sila komen di bawah. Saya benar-benar suka melakukan artikel susulan ke posting ini yang mempunyai skrip yang dikemas kini berdasarkan input pembaca. Sekiranya anda memerlukan arahan bagaimana untuk "menggunakan" skrip ini atau menyediakan tugas yang dijadualkan, sila lihat pautan di bawah sumber skrip.

Tanpa berlengah lagi, di sini adalah:

Nota : Oleh kerana sebut harga tidak dipaparkan dengan betul di bawah (dan hasilnya boleh merosakkan skrip), saya telah memasukkan pautan teks kosong di bawah skrip yang anda boleh gunakan untuk mendapatkan sumber yang tepat untuk disalin.

@ECHO OFF REM BackupScript REM Versi 1.01, Dikemaskini: 2008-05-21 REM Oleh Jason Faulkner (articles132solutions.com) REM Melakukan backup atau tambahan folder dan fail yang dikonfigurasi oleh pengguna. REM Usage --- REM> BackupScript ENABLEEXTENSIONS SETLOCAL ENABLEDELAYEDEXPANSION REM --- Pilihan Konfigurasi --- Lokasi Folder REM di mana anda mahu menyimpan arkib sandaran yang terhasil. REM Folder ini mesti wujud. Jangan letak '\' pada akhirnya, ini akan ditambah secara automatik. REM Anda boleh memasukkan jalan setempat, huruf pemacu luaran (mis. F :) atau lokasi rangkaian (ex \ \ server \ backup) SET BackupStorage = C: \ Backup REM Yang mana dalam seminggu yang anda mahu lakukan sandaran penuh? REM Masukkan satu daripada yang berikut: Sun, Mon, Tue, Wed, Thu, Fri, Sat, * REM Setiap hari dalam seminggu selain daripada yang dinyatakan di bawah akan menjalankan sandaran tambahan. REM Jika anda memasukkan '*', cadangan penuh akan dijalankan setiap kali. SET FullBackupDay = * REM Lokasi di mana 7-Zip dipasang pada komputer anda. REM Lalai adalah dalam folder, '7-Zip' dalam direktori Fail Program anda. SET InstallLocationOf7Zip =% ProgramFiles% \ 7-Zip REM + -------------------------------------- --------------------------------- + REM | Jangan ubah apa-apa di bawah sini melainkan anda tahu apa yang anda lakukan. | REM + ------------------------------------------------ ----------------------- + REM Pemboleh ubah penggunaan. SET exe7Zip =% InstallLocationOf7Zip% \ 7z.exe SET dirTempBackup =% TEMP% \ backup SET filBackupConfig = BackupConfig.txt REM Validation. JIKA TIDAK ADA% filBackupConfig% (ECHO Tiada fail konfigurasi yang ditemui, hilang:% filBackupConfig% GOTO End) JIKA TIDAK ADA "% exe7Zip%" (ECHO 7-Zip tidak dipasang di lokasi:% dir7Zip% 7-Zip dipasang. GOTO End) Pembolehubah Backup REM. FOR / f "tokens = 1, 2, 3, 4 delims = /" %% a IN ('date / t') DO (SET DayOfWeek = %% a SET NowDate = %% d - %% b - %% c SET FileDate = %% b - %% c - %% d) JIKA {% FullBackupDay%} == {*} SET FullBackupDay =% DayOfWeek% JIKA / i {% FullBackupDay%} == {% DayOfWeek%} (SET txtBackup = SET penuh swXCopy = / e) ELSE (SET txtBackup = Peningkatan SET swXCopy = / s / d:% FileDate%) ECHO Bermula untuk menyalin fail. JIKA TIDAK ADA "% dirTempBackup%" MKDIR "% dirTempBackup%" UNTUK / f "skip = 1 tokens = *" %% A IN (% filBackupConfig%) DO (SET Current = "(ECHO ERROR! Tidak dijumpai:! Sekarang!) ELSE (ECHO Menyalin:! Sekarang! SET Destinasi =% dirTempBackup% \! Terkini: ~ 0, 1! %% ~ pnxA REM Tentukan jika entri adalah fail atau direktori. / "/ V / c / i / g / h / q / r / y% swXCopy%) ELSE (REM File "COPY / v / y"! Current! ""! Destination! "))) ECHO Selesai menyalin fail. ECHO. SET BackupFileDestination =% BackupStorage% \ Backup_% FileDate% _% txtBackup% .zip REM Jika fail sandaran wujud, keluarkannya memihak kepada fail baru. JIKA EXIST "% BackupFileDestination%" DEL / f / q "% BackupFileDestination%" ECHO Memampatkan file yang disandarkan. (Tetingkap baru) REM Compress fail menggunakan 7-Zip dalam proses keutamaan yang lebih rendah. START "Backup Compressing. JANGAN TUTUP" / belownormal / tunggu "% exe7Zip%" a -tzip -r -mx5 "% BackupFileDestination%" "% dirTempBackup% \" ECHO Selesai memampatkan file yang disandarkan. ECHO. ECHO Membersihkan. JIKA EXIST "% dirTempBackup%" RMDIR / s / q "% dirTempBackup%" ECHO. : Akhir ECHO Selesai. ECHO. ENDLOCAL

Sumber teks kosong boleh didapati di sini: sandaran

Jika anda memerlukan bantuan bermula dengan melaksanakan skrip ini, berikut adalah beberapa pautan untuk membantu anda:

  • Cara membuat fail Batch
  • Bagaimana untuk membuat Windows Scheduled Task

Ini adalah skrip yang sama yang saya gunakan untuk membuat sandaran komputer saya setiap hari (dengan beberapa pengubahsuaian tentu saja), jadi saya tahu ia berfungsi dengan baik. Saya harap anda dapati ia berguna.

Nikmati!

Skrip batch Windows untuk data sandaran