النقاط الرئيسية
- تُستخدم الأوامر rm وrmdir لحذف الملفات والدلائل على أنظمة Linux وغيرها من الأنظمة المشابهة لنظام Unix. وهي تشبه الأوامر del وdelttee في أنظمة Windows وDOS.
- تتم إزالة الملفات والدلائل المحذوفة باستخدام rm وrmdir على الفور من الكمبيوتر، دون نقلها إلى سلة المهملات. لاستعادة الملفات المحذوفة عن طريق الخطأ، يجب استخدام نسخة احتياطية.
- يمكن لأمر rm حذف ملف واحد أو ملفات متعددة، مع خيارات لاستخدام أحرف البدل لاختيار مجموعات من الملفات. يمكن لأمر rmdir حذف الدلائل الفارغة فقط، بينما يُستخدم خيار rm -r لحذف الدلائل وكل محتوياتها. يُنصح بالحذر عند استخدام أمر rm -rf، حيث يمكن أن يتسبب في فقد البيانات أو تعطل النظام.
ال rm
و rmdir
تحذف الأوامر الملفات والدلائل على أنظمة التشغيل Linux وmacOS وأنظمة التشغيل الأخرى المشابهة لنظام التشغيل Unix. وهي تشبه del
و deltree
الأوامر في Windows وDOS. هذه الأوامر قوية جدًا وتحتوي على عدد كبير من الخيارات.
من المهم ملاحظة أن الملفات والدلائل المحذوفة باستخدام rm
و rmdir
لا يتم نقل الملفات إلى سلة المهملات. يتم إزالتها فورًا من جهاز الكمبيوتر الخاص بك. إذا قمت بحذف الملفات عن طريق الخطأ باستخدام هذه الأوامر، فإن الطريقة الوحيدة التي ستتمكن من استعادتها بها هي من خلال نسخة احتياطية.
كيفية حذف الملفات على لينكس باستخدام rm
أبسط حالة هي حذف ملف واحد في الدليل الحالي. اكتب rm
الأمر، والمسافة، ثم اسم الملف الذي تريد حذفه.
rm file_1.txt
إذا لم يكن الملف موجودًا في دليل العمل الحالي، فقم بتوفير مسار لموقع الملف.
rm ./path/to/the/file/file_1.txt
يمكنك تمرير أكثر من اسم ملف إلى rm
سيؤدي القيام بذلك إلى حذف كافة الملفات المحددة.
rm file_2.txt file_3.txt
يمكن استخدام الأحرف البدل لتحديد مجموعات الملفات المراد حذفها. *
يمثل شخصيات متعددة و ?
يمثل حرفًا واحدًا. سيؤدي هذا الأمر إلى حذف جميع ملفات الصور بتنسيق png الموجودة في دليل العمل الحالي.
rm *.png
سيؤدي هذا الأمر إلى حذف جميع الملفات التي تحتوي على امتداد حرف واحد. على سبيل المثال، سيؤدي هذا إلى حذف الملفين 1 و2، ولكن ليس الملف 12.
rm *.?
إذا كان الملف محميًا ضد الكتابة، فسوف يُطلب منك ذلك قبل حذف الملف. يجب عليك الرد بـ y
أو n
واضغط على “أدخل”.
لتقليل مخاطر الاستخدام rm
مع استخدام الأحرف البدل -i
خيار (تفاعلي). يتطلب منك هذا تأكيد حذف كل ملف.
rm -i *.dat
ال -f
خيار (force) هو عكس الخيار التفاعلي. فهو لا يطلب التأكيد حتى إذا كانت الملفات محمية ضد الكتابة.
rm -f filename
كيفية حذف المجلدات على لينكس باستخدام rm
لإزالة دليل فارغ، استخدم -d
خيار (الدليل). يمكنك استخدام الأحرف البدل (*
و ?
) في أسماء الدليل كما يمكنك مع أسماء الملفات.
rm -d directory
يؤدي توفير أكثر من اسم دليل إلى حذف كافة الدلائل الفارغة المحددة.
rm -d directory1 directory2 /path/to/directory3
لحذف الدلائل غير الفارغة، استخدم -r
خيار (متكرر). لكي نكون واضحين، يؤدي هذا إلى إزالة الدلائل وجميع الملفات والدلائل الفرعية الموجودة بداخلها.
rm -r directory1 directory2 directory3
إذا كان الدليل أو الملف محميًا ضد الكتابة، فسوف يُطلب منك تأكيد الحذف. لحذف الدلائل غير الفارغة وقمع هذه المطالبات، استخدم -r
(متكرر) و -f
(القوة) الخيارات معًا.
rm -rf directory
يجب توخي الحذر هنا. ارتكاب خطأ مع rm -rf
قد يؤدي الأمر إلى فقد البيانات أو تعطل النظام. إنه أمر خطير، والحذر هو أفضل سياسة. لفهم بنية الدليل والملفات التي سيتم حذفها بواسطة rm -rf
الأمر، استخدم tree
يأمر.
يستخدم apt-get
لتثبيت هذه الحزمة على نظامك إذا كنت تستخدم Ubuntu أو أي توزيع آخر يعتمد على Debian. في توزيعات Linux الأخرى، استخدم أداة إدارة الحزم الخاصة بتوزيعة Linux الخاصة بك بدلاً من ذلك.
sudo apt-get install tree
تشغيل tree
ينتج الأمر رسمًا تخطيطيًا سهل الفهم لهيكل الدليل والملفات الموجودة أسفل الدليل الذي يتم تشغيله منه.
tree
يمكنك أيضًا توفير مسار إلى tree
أمر لجعله يبدأ الشجرة من دليل آخر في نظام الملفات.
tree path/to/directory
ال rm
الأمر لديه أيضا --one-file-system, --no-preserve-root, --preserve-root
الخيارات، ولكن هذه الخيارات موصى بها فقط للمستخدمين المتقدمين. إذا حدث خطأ ما، فقد تحذف عن طريق الخطأ جميع ملفات النظام لديك. راجع الأمر صفحة الدليل لمزيد من المعلومات.
كيفية حذف المجلدات على لينكس باستخدام rmdir
هناك أمر آخر يسمى rmdir
، والتي يمكنك استخدامها لحذف الدلائل. الفرق بين rm
و rmdir
هل هذا هو rmdir
يمكنه فقط حذف المجلدات الفارغة. ولن يقوم بحذف الملفات أبدًا.
أبسط حالة هي حذف دليل فارغ واحد. كما هو الحال مع rm
يمكنك تمرير أسماء أدلة متعددة إلى rmdir
أو مسار إلى دليل.
حذف دليل واحد في الدليل الحالي عن طريق تمرير اسمه إلى rmdir
:
rmdir directory
حذف عدة أدلة عن طريق تمرير قائمة الأسماء إلى rmdir
:
rmdir directory1 directory2 directory3
حذف دليل غير موجود في الدليل الحالي عن طريق تحديد المسار الكامل لهذا الدليل:
rmdir /path/to/directory
إذا حاولت حذف مجلد ليس فارغًا، rmdir
سيظهر لك رسالة خطأ. في المثال التالي rmdir
بنجاح، وبصمت، يحذف clients
الدليل لكنه يرفض حذفه projects
الدليل لأنه يحتوي على ملفات. projects
تم ترك الدليل كما هو تمامًا والملفات الموجودة فيه لم يتم المساس بها.
متى rmdir
يعطي خطأ “الدليل غير فارغ”، ويتوقف عن معالجة الدلائل التي تم تمريرها إليه عبر سطر الأوامر. إذا طلبت منه حذف أربعة أدلة وكان الدليل الأول يحتوي على ملفات، rmdir
سيعطيك رسالة الخطأ ولن يفعل أي شيء آخر. يمكنك إجباره على تجاهل هذه الأخطاء باستخدام --ignore-fail-on-non-empty
خيار حتى تتم معالجة الدلائل الأخرى.
في المثال التالي تم تمرير مجلدين إلى rmdir
، هؤلاء هم work/reports
و work/quotes
. ال --ignore-fail-on-non-empty
تم تضمين الخيار في الأمر. work/reports
يحتوي المجلد على ملفات بداخله، لذا rmdir
لا يمكن حذفه. --ignore-fail-on-non-empty
قوات الخيار rmdir
لتجاهل الخطأ والانتقال إلى المجلد التالي الذي يحتاج إلى معالجته، وهو work/quotes
هذا مجلد فارغ، و rmdir
يحذفه.
هذا هو الأمر المستخدم.
rmdir --ignore-fail-on-non-empty work/reports /work/quotes
يمكنك استخدام -p
(الآباء) خيار لحذف دليل وحذف أدلة الوالدين أيضًا. تعمل هذه الحيلة لأن rmdir
يبدأ الأمر بالدليل المستهدف ثم يعود إلى الدليل الرئيسي. يجب أن يكون هذا الدليل فارغًا الآن، لذا يمكن حذفه عن طريق rmdir
وتتكرر العملية مرة أخرى بالعودة إلى المسار الذي تم توفيره لـ rmdir
.
في المثال التالي الأمر الذي تم تمريره إلى rmdir
يكون:
rmdir -p work/invoices
كلاهما invoices
و ال work
تم حذف الدلائل، حسب الطلب.
سواء كنت تستخدم Bash أو أي غلاف آخر، يوفر لك Linux أوامر مرنة وقوية لحذف الدلائل والملفات مباشرة من سطر أوامر المحطة الطرفية. يفضل بعض الأشخاص أن يكون سير العمل يدور حول المحطة الطرفية. قد لا يكون لدى الآخرين أي خيار في هذا الأمر. قد يعملون على خوادم بدون واجهة مستخدم رسومية مثبتة أو في جلسة بعيدة على نظام بدون واجهة مستخدم مثل Raspberry Pi. هذه الأوامر مثالية لهذه المجموعة من الأشخاص.
ولكن أياً كان نوع سير العمل الذي تفضله، فإن هذه الأوامر تلائم بشكل جيد تضمينها في نصوص shell. إذا تم تشغيل نص برمجي بواسطة أمر cron
يمكن أن يساعد ذلك في أتمتة مهام التنظيف الروتينية مثل إزالة ملفات السجل غير المرغوب فيها. إذا قمت بالتحقق من حالة الاستخدام هذه، فتذكر قوة هذه الأوامر، واختبر كل شيء بعناية، واحتفظ دائمًا بنسخة احتياطية حديثة.