جدول المحتويات:

مزامنة المجلدات مع بايثون: 5 خطوات
مزامنة المجلدات مع بايثون: 5 خطوات

فيديو: مزامنة المجلدات مع بايثون: 5 خطوات

فيديو: مزامنة المجلدات مع بايثون: 5 خطوات
فيديو: كيفية نقل وتبادل الملفات بين أجهزة الكمبيوتر المتصلة بنفس الشبكة بدون كابل او برامج 2023 #عبقرينو 2024, شهر نوفمبر
Anonim
مزامنة المجلدات مع بايثون
مزامنة المجلدات مع بايثون
مزامنة المجلدات مع بايثون
مزامنة المجلدات مع بايثون

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

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

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

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

الخطوة الأولى: تثبيت بايثون وتوابعها

لإنشاء البرنامج القابل للتوزيع ، تحتاج إلى تثبيت Python على جهاز الكمبيوتر الخاص بك. للقيام بذلك ، اتبع رابط الويب هنا https://www.python.org/downloads/ وانتقل لأسفل حتى تجد الإصدار الذي تريده. ملاحظة: لسوء الحظ ، اعتبارًا من كتابة الوحدة النمطية pyinstaller التي سنستخدمها لا تعمل حتى الآن مع python 3.8 لذلك ستحتاج إلى استخدام إصدار متوافق من python (3.5-3.7).

اتبع التثبيت من خلال التأكد من تحديد مربع الاختيار "إضافة إلى المسار".

بمجرد التثبيت ، افتح موجه الأوامر وقم بتثبيت وحدات python النمطية التي نحتاجها ، للقيام بهذا النوع ، ومتابعة أي مطالبات كما هو مطلوب:

نقطة تثبيت pyinstaller

نقطة تثبيت dirsync

الخطوة الثانية: نص بايثون

البرنامج النصي لطيف وبسيط ، سطرين فقط ، انسخ والصق التالي إما في IDLE (مثبت مع Python) أو المفكرة وحفظه باسم "DirectorySync.py":

من مزامنة استيراد dirsync

المزامنة ('C: / FOLDER_A'، 'E: / FOLDER_B'، 'sync'، purge = True)

تأكد من تغيير المجلدين أعلاه بالمجلدين اللذين ترغب في مزامنتهما. الخط المائل العكسي المزدوج مطلوب في اسم المسار حيث أن الشرطة المائلة للخلف هي حرف هروب في Python.

يستورد السطر الأول وحدة dirsync التي قمنا بتثبيتها مسبقًا.

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

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

pypi.python.org/pypi/dirsync/2.2.2

الخطوة 3: إنشاء ملفات exe

لإنشاء الملف القابل للتنفيذ ، نحتاج الآن إلى العودة إلى موجه الأوامر.

اكتب ما يلي مع استبدال مسار المجلد بالمسار إلى البرنامج النصي DirectorySync.py الذي أنشأناه في الخطوة الأخيرة:

pyinstaller -F -w C: /Route_to_your_folder/DirectorySync.py

في موقع مجلد نص Python الخاص بك ، يؤدي هذا إلى إنشاء سلسلة من المجلدات: _pycache_، build، dist وملفان آخران. يوجد الآن في مجلد dist ملف يسمى DirectorySync.exe ، سيؤدي تشغيل هذا إلى إجراء المزامنة في الخلفية. يمكن توزيع هذا الملف كما هو على أي شخص ويمكنهم بعد ذلك تشغيل مزامنة دون الحاجة إلى تثبيت Python على الكمبيوتر.

لشرح ما يجري في النص الغامق الذي كتبته في موجه الأوامر:

يطلب "pyinstaller" من الكمبيوتر استخدام برنامج pyinstaller الذي قمنا بتنزيله مسبقًا

"-F" هو خيار يخبر برنامج pyinstaller بإنشاء ملف تنفيذي واحد فقط وليس سلسلة من المجلدات التي يجب أيضًا توزيعها.

"-w" هو خيار يخبر الكمبيوتر بعدم عرض موجه الأوامر في كل مرة يقوم فيها بتشغيل البرنامج النصي.

المسار هو المسار إلى نص بايثون.

لمزيد من الخيارات والمساعدة انظر الرابط أدناه:

pyinstaller.readthedocs.io/en/stable/usage…

الخطوة 4: التشغيل تلقائيًا

أنت الآن جاهز لمزامنة أي مجلدات دون الحاجة إلى النسخ واللصق والحذف بشكل متكرر بمجرد النقر المزدوج على الملف القابل للتنفيذ. لكننا نريد أن نخطو خطوة أبعد من ذلك وأن نجعل Windows يقوم بتشغيل العملية تلقائيًا حتى لا داعي للقلق.

للقيام بذلك ، سنستخدم برنامج Task Scheduler الذي يأتي مع Windows ، وتستند هذه العملية إلى Windows 10 ولكنها متطابقة تقريبًا في أنظمة Windows الأخرى.

  1. افتح برنامج جدولة المهام من قائمة البداية.
  2. على الجانب الأيمن ، حدد "إنشاء مهمة" من القائمة.
  3. أعطه اسمًا ووصفًا وفي الجزء السفلي تأكد من تكوينه لنظام التشغيل الصحيح.
  4. في علامة التبويب "المشغلات" ، أنشئ مشغلًا جديدًا بالنقر فوق "جديد" في الجزء السفلي الأيسر ، وفي النافذة المنبثقة الجديدة ، حدد التكوين الذي تريده ، واخترت بدء المهمة في تسجيل الدخول وتكرارها كل ساعة حتى أعرف أنني لدي نسخة احتياطية من عملي كل ساعة. انقر فوق موافق.
  5. في علامة التبويب "الإجراءات" ، قم بإنشاء إجراء جديد بنفس الطريقة. الإجراء الذي نحتاجه هو بدء برنامج وهو الإعداد الافتراضي. تصفح إلى الملف القابل للتنفيذ الذي أنشأناه سابقًا وحدد. ملاحظة: - إذا قمت بنقل الملف القابل للتنفيذ بعد إنشاء المهمة ، فلن تكتمل المهمة وبالتالي المزامنة.
  6. في علامة التبويب "الشروط" ، قم بإلغاء التحقق من إعدادات الطاقة بحيث تعمل بالبطارية بالإضافة إلى توصيلها بالتيار الكهربائي.
  7. انقر فوق "موافق" وقمت الآن بإنشاء مهمتك.

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

هذا هو البرنامج التعليمي الكامل ، وآمل أن تجده مفيدًا ، أي أسئلة ، أخبرني.

الخطوة 5: تحديث 15 يناير 2020 - تنزيل البرنامج

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

موصى به: