Windows Batch Script لنسخ البيانات احتياطيًا

قد لا يكون مستخدمو الكمبيوتر الذين نشأوا مع أجهزة كمبيوتر Mac و Windows المتقدمة على دراية بذلك ، ولكن مرة واحدة ، منذ فترة طويلة ، تم التحكم في جميع أجهزة الكمبيوتر الشخصية باستخدام واجهة سطر الأوامر. نعم ، كان مربع الأوامر هذا على جهاز Windows الخاص بك هو الطريقة الوحيدة التي يتفاعل بها معظم الأشخاص مع جهاز كمبيوتر. اعتمدت واجهات سطر الأوامر بشكل كبير على برامج صغيرة تسمى "البرامج النصية" ، والتي كانت عبارة عن مجموعات من أوامر نظام التشغيل المستخدمة لأداء المهام الشائعة.

على الرغم من أن واجهات المستخدم الرسومية لأجهزة الكمبيوتر الشخصية الحالية هي سنوات ضوئية أكثر تعقيدًا وسهولة في الاستخدام من خطوط الأوامر القديمة ، لا تزال هناك استخدامات للطريقة القديمة للتحكم في جهاز الكمبيوتر الخاص بك. يعد النسخ الاحتياطي للبيانات أحد أكثر التطبيقات شيوعًا والأكثر ملاءمة لبرنامج نصي لسطر الأوامر. يمكن أتمتة البرامج النصية لسطر الأوامر للتشغيل في أي وقت دون أي تفاعل بشري ، ولها قيود قليلة. وأفضل ما في الأمر أنها جزء مضمن من نظام التشغيل Windows.

لماذا نصوص سطر الأوامر؟

لماذا تستخدم برنامج نصي بسطر الأوامر عندما يكون هناك برامج نسخ احتياطي تجارية ومجانية؟ حسنًا ، تحتوي البرامج النصية لسطر الأوامر على عدد من المزايا الفريدة. فيما يلي عدد قليل منهم:

  • أوامر أصلية : ما هي أفضل طريقة لنسخ البيانات احتياطيًا من استخدام الوظائف المتاحة من خلال البرنامج الذي يقوم بإنشاء البيانات؟ سواء كان هذا هو نظام التشغيل نفسه عن طريق أمر نسخ ملف بسيط أو أمر قاعدة بيانات لإنتاج ملف ثنائي قابل للاستعادة ، فإن البرنامج المصدر يعرف أفضل طريقة لعمل نسخة احتياطية من نفسه.
  • التحكم المطلق : نظرًا لأن البرنامج النصي لسطر الأوامر يتبع إجراءً بسيطًا خطوة بخطوة ، فأنت تعرف بالضبط ما يحدث ويمكنك بسهولة تعديل السلوك.
  • سريع : بما أن كل شيء هو أمر أصلي ، فلا شيء يخضع للتفسير. مرة أخرى ، أنت تستخدم الأوامر التي يوفرها البرنامج نفسه ، لذلك يتم تقليل النفقات العامة إلى الحد الأدنى.
  • قوي : لم أر حتى الآن مهمة نسخ احتياطي لا يمكن إنجازها من خلال برنامج نصي لسطر الأوامر ... وقد قمت ببعض الأشياء غير التقليدية. على الرغم من أنك قد تضطر إلى إجراء بعض الأبحاث والتجارب والخطأ إذا كان لديك بالفعل احتياجات فريدة ، فعادة ما تكون الوظائف والميزات المضمنة في لغة البرمجة النصية التي تستخدمها أكثر من كافية.
  • مجاني ومرن : من الواضح أن نص سطر الأوامر لا يكلف شيئًا (خارج الوقت اللازم لتطويره) ، لذلك يمكنك نسخ البرامج النصية الخاصة بك إلى أي عدد من الأجهزة والأنظمة بقليل من الوقت أو بدون تكلفة. قارن ذلك بتكلفة شراء التراخيص لبرامج النسخ الاحتياطي على العديد من الخوادم و / أو أجهزة سطح المكتب.

نظرة عامة سريعة على البرنامج النصي دفعة النسخ الاحتياطي

لم يتعلم معظم الناس أبدًا استخدام البرمجة النصية لسطر الأوامر ، وتعتبر إلى حد ما "فنًا أسود". ومع ذلك ، فمن السهل جدًا تعلمه. لإثبات قوة سطر الأوامر ، أقدم برنامجًا نصيًا بسيطًا للدفعات من Windows يمكنك استخدامه لإجراء نسخ احتياطي لبياناتك المهمة. لا يتطلب هذا البرنامج النصي القابل للتكوين والقابل للتخصيص أي معرفة (أو رغبة في التعلم) بلغة البرمجة النصية لنظام التشغيل Windows ، ولكن إذا قررت أنك تريد معرفة المزيد حول البرمجة النصية المجمعة لـ Windows ، فستجد هذا البرنامج النصي ليكون نقطة انطلاق جيدة .

ما يفعله البرنامج النصي للنسخ الاحتياطي:

  1. يقوم بإنشاء نسخ احتياطية كاملة أو يومية تزايدي (انظر أدناه للحصول على تعريف) من الملفات والمجلدات التي تحددها في ملف نصي تكوين منفصل (انظر أدناه).
    • عندما يتم تسمية مجلد ، يتم نسخ هذا المجلد وجميع المجلدات الفرعية احتياطيًا.
    • عندما يتم تسمية ملف ، يتم نسخ هذا الملف احتياطيًا.
  2. يضغط (zips) الملفات التي تم نسخها احتياطيًا. بعد نسخ جميع الملفات المراد نسخها احتياطيًا ، يتم ضغطها لتوفير مساحة. مطلوب 7-Zip للتثبيت على نظامك حتى يعمل هذا.
  3. يؤرخ الملف المضغوط وينقله إلى مكان التخزين. بعد ضغط ملفات النسخ الاحتياطي ، يتم إعطاء الأرشيف الناتج اسم ملف وفقًا للتاريخ الحالي ثم يتم نقله إلى موقع تخزين تم تكوينه ، مثل محرك أقراص خارجي أو موقع على الشبكة.
  4. ينظف بعد نفسه. بعد اكتمال جميع المهام ، يقوم البرنامج النصي الدفعي بتنظيف جميع الملفات المؤقتة التي أنشأها.

متطلبات:

Windows 2000 / XP / 2003 / Vista أو أحدث

7-Zip (مجاني)

ملف الضبط:

ملف التكوين هو ببساطة ملف نصي يحتوي على ملفات ومجلدات للنسخ الاحتياطي ، يتم إدخال عنصر نسخ احتياطي واحد في كل سطر. هذا الملف يجب أن يكون اسمه "BackupConfig.txt" ويكون موجودا في نفس المجلد مثل البرنامج النصي للنسخ الاحتياطي. فيما يلي مثال على ملف BackupConfig.txt (لاحظ أن الحرف "#" في السطر الأول يشير إلى أن السطر عبارة عن تعليق ؛ يتم تجاهل التعليقات دائمًا عند تشغيل البرنامج النصي):

# أدخل أسماء الملفات والمجلدات ، واحد في كل سطر.

ج: المستندات والإعدادات Jason Faulkner سطح المكتب C: المستندات والإعدادات Jason Faulkner مستنداتي الملفات المهمة C: ScriptsBackupScript.bat

يقوم المثال أعلاه بعمل نسخة احتياطية لسطح مكتب مستخدم Windows Jason Faulkner (وجميع المجلدات الموجودة على سطح المكتب) ، والمجلد المسمى "الملفات المهمة" داخل المستندات (وجميع المجلدات الموجودة داخل "الملفات المهمة") والملف "BackupScript.bat" بداخله C: دليل البرامج النصية.

أنواع النسخ الاحتياطية:

  • النسخ الاحتياطي الكامل: نسخة كاملة من جميع الملفات والمجلدات (بما في ذلك المجلدات الفرعية) مضمنة في النسخة الاحتياطية.
  • نسخ احتياطي تزايدي: عند توفير مجلد ، يتم فقط إنشاء الملفات أو تعديلها على ملف التاريخ الحالي نكون

    استعيدت. عندما يتم توفير ملف ، يتم نسخه احتياطيًا دائمًا ، بغض النظر عن وقت تعديله.

البرنامج النصي للنسخ الاحتياطي للبيانات في Windows

أريد التأكيد على أن هذا البرنامج النصي أساسي للغاية ، حيث أن كل ما يفعله هو إنشاء نسخ احتياطية عن طريق استخدام نسخة ملف بسيطة. هناك بعض خيارات التكوين التي يمكنك ضبطها:

  • موقع تخزين النسخ الاحتياطي حيث يتم تخزين ملفات النسخ الاحتياطي المضغوطة الناتجة.
  • يوم الأسبوع الذي يتم فيه تشغيل النسخ الاحتياطي الكامل (في أي يوم آخر يتم تشغيل نسخ احتياطي تزايدي).
  • موقع حيث تم تثبيت 7-Zip على جهاز الكمبيوتر الخاص بك. يتم تعيين البرنامج النصي تلقائيًا للبحث في الموقع الافتراضي.

إذا كان لديك أي اقتراحات أو طلبات ميزة ، يرجى التعليق أدناه. أود حقًا أن أكتب مقالة متابعة لهذا المنشور والتي تحتوي على نص محدث يعتمد على مدخلات القارئ. إذا كنت بحاجة إلى إرشادات حول كيفية "استخدام" هذا البرنامج النصي أو إعداد مهمة مجدولة ، فقم بإلقاء نظرة على الروابط الموجودة أسفل مصدر البرنامج النصي.

دون مزيد من اللغط، وهنا هو عليه:

ملحوظة: نظرًا لأن الاقتباسات لا تظهر بشكل صحيح أدناه (ونتيجة لذلك يمكن أن تفسد البرنامج النصي) ، فقد قمت بتضمين ارتباط نص عادي أسفل البرنامج النصي والذي يمكنك استخدامه للحصول على مصدر دقيق للنسخ منه.

ECHO OFF REM BackupScript REM الإصدار 1.01 ، تم التحديث: 2008-05-21 REM بواسطة Jason Faulkner (Articles [-at-] 132solutions.com) REM يقوم بإجراء نسخ احتياطية كاملة أو متزايدة للمجلدات والملفات التي تم تكوينها بواسطة المستخدم. استخدام REM --- REM> BackupScript SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION REM --- خيارات التكوين --- موقع مجلد REM حيث تريد تخزين أرشيف النسخ الاحتياطي الناتج. يجب أن يوجد هذا المجلد REM. لا تضع "" في النهاية ، ستتم إضافة هذا تلقائيًا. REM يمكنك إدخال مسار محلي أو حرف محرك أقراص خارجي (على سبيل المثال F :) أو موقع شبكة (على سبيل المثال \ عمليات النسخ الاحتياطي للخادم) SET BackupStorage = C: Backup REM في أي يوم من أيام الأسبوع تريد إجراء نسخ احتياطي كامل عليه؟ REM أدخل واحدًا مما يلي: الأحد ، الإثنين ، الثلاثاء ، الأربعاء ، الخميس ، الجمعة ، السبت ، * REM أي يوم من أيام الأسبوع بخلاف اليوم المحدد أدناه سيتم تشغيل نسخة احتياطية تزايدي. REM إذا قمت بإدخال "*" ، فسيتم تشغيل نسخة احتياطية كاملة في كل مرة. SET FullBackupDay = * موقع REM حيث تم تثبيت 7-Zip على جهاز الكمبيوتر الخاص بك. REM الافتراضي هو في مجلد ، "7-Zip" في دليل Program Files الخاص بك. SET InstallLocationOf7Zip =٪ ProgramFiles٪ 7-Zip REM + --------------------------------------- -------------------------------- + REM | لا تغير أي شيء أدناه هنا إلا إذا كنت تعرف ما تفعله. | ريم + ------------------------------------------------ ----------------------- + متغيرات استخدام REM. SET exe7Zip =٪ InstallLocationOf7Zip٪ 7z.exe SET dirTempBackup =٪ TEMP٪ backup SET filBackupConfig = BackupConfig.txt التحقق من REM. إذا لم يكن موجودًا٪ filBackupConfig٪ (ECHO لم يتم العثور على ملف تكوين ، مفقود:٪ filBackupConfig٪ GOTO End) إذا لم يكن موجودًا "٪ exe7Zip٪" (لم يتم تثبيت ECHO 7-Zip في الموقع:٪ dir7Zip٪ ECHO الرجاء تحديث الدليل حيث تم تثبيت 7-Zip. GOTO End) متغيرات النسخ الاحتياطي REM. لـ / 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) IF {٪ FullBackupDay٪} == {*} SET FullBackupDay =٪ DayOfWeek٪ IF / i {٪ FullBackupDay٪} == {٪ DayOfWeek٪} (SET txtBackup = مجموعة كاملة swXCopy = / e) ELSE (SET txtBackup = مجموعة تزايدي swXCopy = / s / d:٪ FileDate٪) ECHO بدء نسخ الملفات. إذا لم يكن موجودًا "٪ dirTempBackup٪" MKDIR "٪ ​​dirTempBackup٪" FOR / f "تخطي = 1 رمز = *" ٪٪ A IN (٪ filBackupConfig٪) افعل (ضبط الحالي = ٪٪ ~ A إذا لم يكن موجودًا "! الحالي! "(ECHO ERROR! غير موجود:! Current!) ELSE (ECHO Copying:! Current! SET Destination =٪ dirTempBackup٪! Current: ~ 0،1! ٪٪ ~ pnxA REM حدد ما إذا كان الإدخال عبارة عن ملف أم دليل. IF "٪٪ ~ xA" == "" (دليل REM. XCOPY "! Current!" "! Destination!" / v / c / i / g / h / q / r / y٪ swXCopy٪) آخر (ملف REM. COPY / v / y "! Current!" "! Destination!"))) ECHO تم نسخ الملفات. صدى صوت. SET BackupFileDestination =٪ BackupStorage٪ Backup_٪ FileDate٪ _٪ txtBackup٪ .zip REM إذا كان ملف النسخ الاحتياطي موجودًا ، فقم بإزالته لصالح الملف الجديد. إذا كان موجودًا "٪ BackupFileDestination٪" DEL / f / q "٪ BackupFileDestination٪" ECHO ضغط الملفات التي تم نسخها احتياطيًا. (نافذة جديدة) REM ضغط الملفات باستخدام 7-Zip في عملية ذات أولوية أقل. ابدأ "ضغط النسخ الاحتياطي. لا تغلق" / belownormal / wait "٪ exe7Zip٪" a -tzip -r -mx5 "٪ BackupFileDestination٪" "٪ dirTempBackup٪" ECHO تم ضغط الملفات التي تم نسخها احتياطيًا. صدى صوت. تنظيف ECHO. في حالة وجود "٪ dirTempBackup٪" RMDIR / s / q "٪ dirTempBackup٪" ECHO. : انتهى إنهاء ECHO. صدى صوت. ENDLOCAL

مصدر النص العادي متاح هنا: النسخ الاحتياطي

إذا كنت بحاجة إلى مساعدة للبدء في تنفيذ هذا البرنامج النصي ، فإليك بعض الروابط لمساعدتك:

  • كيفية إنشاء ملف دفعي
  • كيفية إنشاء مهمة مجدولة في Windows

هذا هو نفس البرنامج النصي الذي أستخدمه لإجراء نسخ احتياطي لجهاز الكمبيوتر الخاص بي يوميًا (مع بعض التعديلات بالطبع) ، لذلك أعلم أنه يعمل جيدًا. أتمنى أن تجدها مفيدة.

يتمتع!