MENU

طريقة حذف جميع الملفات باستثناء ملفات محددة باستخدام موجه أوامر ويندوز

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

الفهرس

الخطوة 1: العمليات الأساسية في موجه الأوامر

لنبدأ بكيفية تشغيل موجه الأوامر. اضغط على زر ويندوز + R لفتح مربع الحوار “تشغيل”، واكتب “cmd” ثم اضغط على Enter. بذلك يتم تشغيل موجه الأوامر.

تغيير الدليل

قبل البدء بالعمل في موجه الأوامر، تحتاج إلى الانتقال إلى الدليل (المجلد) الذي تريد العمل فيه. لهذا، نستخدم الأمر cd. على سبيل المثال، للانتقال إلى مجلد المستندات، تقوم بإدخال ما يلي.

cd C:\Users\<اسم المستخدم>\Documents

عرض قائمة الملفات والمجلدات

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

تنفيذ الأوامر

في موجه الأوامر، يمكنك تنفيذ الأوامر للتعامل مع الملفات والمجلدات. لحذف ملف، استخدم الأمر del، ولحذف مجلد، استخدم الأمر rmdir أو rd. سنشرح هذه الأوامر بالتفصيل لاحقًا في هذا المقال.

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

الخطوة 2: إدراج الملفات باستثناء الملفات المحددة

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

استخدام أمر findstr

أحد الطرق لاستبعاد ملفات محددة عند إدراج الملفات هو دمج الأمر dir مع الأمر findstr. هنا، سننظر في كيفية استبعاد الملفات ذات الامتداد .txt من القائمة كمثال.

dir | findstr /v /i ".txt$"

في هذا الأمر، نحصل على قائمة الملفات في الدليل الحالي باستخدام الأمر dir، ثم نمرر النتيجة إلى الأمر findstr باستخدام الأنبوبة. الخيار /v يعرض فقط الصفوف التي لا تطابق النمط المحدد. الخيار /i يجري بحثًا دون التمييز بين الأحرف الكبيرة والصغيرة. و".txt$" هو تعبير نظامي يبحث عن الصفوف التي تنتهي بـ.txt.

في حالة وجود أكثر من ملف لاستبعاده

إذا كنت تريد استبعاد أكثر من امتداد ملف أو شروط محددة، يمكنك توسيع نمط البحث في أمر findstr. على سبيل المثال، إذا أردت استبعاد الملفات ذات الامتداد .txt و.docx، يمكنك تنفيذ الأمر التالي.

dir | findstr /v /i "\.txt$ \.docx$"

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

نقاط يجب الانتباه إليها

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

الخطوة 3: استخدام أمر for لحذف الملفات وفقًا لشروط معينة

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

الصيغة الأساسية لأمر for

الصيغة الأساسية لأمر for هي كالتالي.

for %متغير in (مجموعة) do أمر [معاملات الأمر]

يستخدم هذا الأمر لتنفيذ الأمر المحدد على كل عنصر في “المجموعة” المحددة. يتم استخدام المتغير لحفظ قيمة كل عنصر مؤقتًا.

حذف جميع الملفات ما عدا الملفات المحددة

على سبيل المثال، إذا أردت حذف جميع الملفات في دليل ما باستثناء الملفات ذات الامتداد .txt، يمكنك استخدام الأمر التالي.

for %i in (*.*) do if not "%~xi" == ".txt" del "%i"

هذا الأمر يقوم بتكرار عملية الحلقة على جميع الملفات في الدليل الحالي (محدد بـ*.*)، ويحذف الملف فقط إذا لم يكن امتداده .txt (الجزء if not "%~xi" == ".txt"). %i يمثل اسم الملف الحالي تحت المعالجة، و%~xi يمثل امتداد هذا الملف.

نقاط يجب الانتباه إليها

عند تنفيذ هذا الأمر في موجه الأوامر، يجب توخي الحذر لتجنب حذف الملفات المهمة عن طريق الخطأ. كما أنه إذا كنت تستخدم هذا الأمر ضمن ملف دُفعة (.bat)، ستحتاج إلى استخدام علامة النسبة المئوية مضاعفة للمتغيرات (مثل %%i).

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

الخطوة 4: أمثلة على تطبيق السكريبتات

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

إنشاء سكريبت النسخ الاحتياطي

يقوم هذا السكريبت بالبحث عن ملفات من نوع معين ونسخها إلى دليل آخر. على سبيل المثال، دعونا ننظر في كيفية إنشاء سكريبت للنسخ الاحتياطي التلقائي لملفات المستندات (.docx).

محتوى السكريبت

@echo off
setlocal enabledelayedexpansion
set "sourceDir=C:\Users\<اسم المستخدم>\Documents"
set "backupDir=C:\Backup"
set "fileType=.docx"

for /r "%sourceDir%" %%i in (*%fileType%) do (
    set "filePath=%%i"
    set "backupPath=!filePath:%sourceDir%=%backupDir%!"
    echo Copying "!filePath!" to "!backupPath!"
    copy "!filePath!" "!backupPath!"
)
echo Backup complete.

يبحث هذا الملف الدُفعي في الدليل المصدر المحدد (sourceDir) عن الملفات من النوع المحدد (fileType، هنا .docx) وينسخها إلى دليل النسخ الاحتياطي (backupDir).

شرح عمل السكريبت

يستخدم الحلقة for /r للبحث عن جميع ملفات .docx في الدليل المصدر وجميع الدلائل الفرعية بشكل تكراري. لكل ملف يتم العثور عليه، يتم استبدال مسار الدليل المصدر بمسار دليل النسخ الاحتياطي، ومن ثم يتم نسخ الملف باستخدام الأمر copy.

كيفية تشغيل السكريبت

لتشغيل هذا السكريبت، انسخ الكود أعلاه في محرر نصوص واحفظه بامتداد .bat (مثل: backupDocs.bat). ثم يمكن تشغيل هذا الملف الدُفعي من موجه الأوامر ليتم النسخ الاحتياطي للمستندات تلقائيًا.

نقاط يجب الانتباه إليها

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

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

تمرين: إنشاء سكريبت باستخدام موجه أوامر ويندوز للحفاظ على الملفات بامتداد معين فقط

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

شرح: إجابة التمرين والشرح التفصيلي

لإنجاز هذه المهمة، سنستخدم الأمر التالي.

for /r %i in (*) do if not "%~xi" == ".txt" del "%i"

هذا الأمر يقوم بتكرار العملية على جميع الملفات في الدليل الحالي والدلائل الفرعية (*)، ويحذف الملف فقط إذا لم يكن امتداده .txt. %i يمثل اسم الملف الحالي تحت المعالجة، و%~xi يستخدم للحصول على امتداد الملف. الشرط if not "%~xi" == ".txt" يصبح صحيحًا إذا لم يكن امتداد الملف هو .txt، وبالتالي يتم حذف الملف.

نقاط يجب الانتباه إليها

قبل تنفيذ هذا الأمر، تأكد من أنك لا تحذف الملفات المهمة عن طريق الخطأ. كما أنه عند استخدام هذا الأمر ضمن ملف دُفعة، تذكر أنه يجب مضاعفة علامة النسبة المئوية للمتغيرات (مثل %%i).

خلاصة

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

الفهرس