كيفية إعادة تسمية الدليل على لينكس

النقاط الرئيسية

  • لا يؤدي تغيير اسم الدليل في Linux إلى الإضرار بالبيانات الموجودة بداخله. بل يؤدي فقط إلى تغيير مسار البيانات، مع ترك الملفات والدلائل سليمة.
  • يعد الأمر “mv” أبسط وأكثر الطرق استخدامًا لإعادة تسمية الدلائل في Linux.
  • إذا كنت بحاجة إلى تنفيذ مهام إعادة تسمية أكثر تعقيدًا، فإن الأمر “rename” مع تعبيرات Perl يوفر خيارًا قويًا ومرنًا. تأكد من تثبيت الإصدار المناسب لتوزيعة Linux الخاصة بك.



إن إعادة تسمية الدليل في Linux أمر سهل، وهناك العديد من الطرق للقيام بذلك. من إعادة تسمية دليل واحد إلى العثور على العديد من الأدلة وإعادة تسميتها، إليك كيفية القيام بذلك.


لن يؤدي تغيير اسم المجلد إلى الإضرار ببياناتك

إن إعادة تسمية الدلائل هي شيء نحتاج جميعًا إلى القيام به من وقت لآخر.

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

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


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

استخدام الأمر mv

في الحالات الأكثر وضوحًا، كل ما نحتاجه حقًا هو mv هذا الأمر جزء لا يتجزأ من كل توزيعات Linux، لذا لا يوجد شيء يجب تثبيته.

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

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


يوجد في هذا الدليل دليلين فرعيين.

ls

إدراج دليلين فرعيين

لإعادة تسمية دليل ما، نستخدم الأمر mv. نحتاج إلى توفير الاسم الحالي للدليل والاسم الجديد.

mv old-work archive-2

إعادة تسمية الدليل باستخدام mv

إذا لم يكن الدليل الذي تريد إعادة تسميته موجودًا في الدليل الحالي، فقم بتوفير المسار بالإضافة إلى اسم الدليل.

mv ~/htg/old-work ~/htg/archive-2

ls


إعادة تسمية دليل في دليل مختلف باستخدام mv من خلال تحديد المسار على سطر الأوامر

استخدام متصفح الملفات

تستطيع متصفحات الملفات إعادة تسمية الدلائل. الضغط على مفتاح F2 في تطبيق GNOME Files هو مفتاح التشغيل. يؤدي تحديد دليل والضغط على مفتاح F2 إلى فتح مربع الحوار “إعادة تسمية المجلد”.

استخدام متصفح fie لإعادة تسمية الدليل

اكتب الاسم الجديد، ثم انقر على زر “إعادة التسمية” الأخضر.

توفير اسم الدليل الجديد في مستعرض الملفات


لقد تمت إعادة تسمية الدليل لك.

تم تغيير اسم الدليل في نافذة متصفح الملفات

إنه بهذه البساطة.

أمر إعادة التسمية

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

سنتحدث عن Perl المستند إلى rename الأمر. هناك أمر آخر أقدم يسمى rename وهو جزء من أدوات Linux الأساسية. ربما تحتاج إلى تثبيت Perl rename الأمر الذي نريد استخدامه.


لتجنب تضارب الأسماء مع الأسماء الموجودة rename الأمر، بيرل rename الأمر يسمى prename على فيدورا، و perl-rename على مانجارو. على أوبونتو، rename و prename الأوامر عبارة عن روابط رمزية يتم تحويلها إلى ملف ثنائي يسمى file-rename.

لذا، في Manjaro، الأمر الذي ستحتاج إلى استخدامه perl-rename، وعلى فيدورا هو prename . على أوبونتو، يمكنك استخدام rename أو prename.

لتثبيت Perl rename، على Ubuntu، تحتاج إلى كتابة:

sudo apt install rename

تثبيت rename على أوبونتو

في فيدورا، الأمر هو:

sudo dnf install prename

تثبيت prename على فيدورا


في Manjaro تسمى الحزمة perl-rename.

sudo pacman -Sy perl-rename

تثبيت perl-rename على Manjaro

تأكد من استخدام الأمر المناسب لتوزيعك إذا كنت تريد العمل من خلال الأمثلة.

الخطوات الأولى مع إعادة التسمية

ال rename يقوم الأمر بأخذ التعبيرات العادية في Perl وتطبيقها على ملف أو دليل أو مجموعة من الملفات أو الدلائل.

لدينا في دليلنا مجموعة من الدلائل الأخرى.

ls

مجموعة من الدلائل في مزيج من الأحرف الكبيرة والصغيرة والمختلطة


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

rename 'y/A-Z/a-z/' *

ls

تحويل الدلائل إلى أسماء بأحرف صغيرة

أصبحت جميع الدلائل الآن بأحرف صغيرة، سواء كانت بالكامل بأحرف كبيرة في السابق، أو كانت تحتوي على حرف كبير غريب.

كل السحر موجود في التعبير. التعبير محاط بعلامتي اقتباس مفردتين “'“هذا هو ما يعنيه الأمر بأكمله.”

  • ي:هذا يعني البحث عن أي حرف في النطاق الأول من الأحرف، واستبداله بالحرف المقابل من النطاق الثاني من الأحرف.
  • /AZ/az/:النطاق الأول هو كل الحروف من “A” إلى “Z”، والنطاق الثاني هو كل الحروف من “a” إلى “z”.
  • *:تعني علامة النجمة البدل تطبيق هذا على كافة الدلائل.


بعبارة أخرى، يقرأ الأمر على النحو التالي “بالنسبة لجميع الدلائل، قم بتبديل أي أحرف كبيرة بالحرف الصغير المكافئ”.

من الواضح أنه يمكنك إعادة تسمية دليل واحد باستخدام renameعلى الرغم من أن هذا يبدو مبالغًا فيه، إلا أنك ستكون أسرع في استخدام mv.

rename 's/gamma/epsilon-2/' *

ls

إعادة تسمية دليل واحد باستخدام إعادة التسمية

تعني “s” في هذا التعبير “استبدال”. فهو يتحقق من كل دليل لمعرفة ما إذا كان اسمه “gamma”. وإذا كان كذلك، فإنه يستبدله بـ “epsilon-2”. ولكن انتبه إلى أن هذا قد يطابق أيضًا دليلًا يسمى “gamma-zeta”، على سبيل المثال، بإعادة تسميته إلى “epsilon-2-zeta”.


يمكننا تجنب ذلك عن طريق إضافة بداية السلسلة “^“ونهاية السلسلة”$“الحروف الأولية للجملة الأولى من التعبير.

ls

rename 's/^gamma$/epsilon-2/' *

ls

تقييد إجراء إعادة التسمية على أسماء الدليل بالكامل فقط

يؤدي هذا إلى ترك الدليل “epsilon-2” دون مساس.

استخدام إعادة التسمية مع الأوامر الأخرى

يمكننا استخدام أوامر أخرى لتحديد المجلدات التي نريدها rename للعمل عليها. إذا كان لدينا مجموعة من الدلائل المتداخلة ونريد إعادة تسمية أي منها تنتهي بـ “-old” بحيث تنتهي بـ “-archive”، فيمكننا تحقيق ذلك باستخدام find و xargs.

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


يبدو أمرنا بهذا الشكل:

find . -depth -type d -name "*-old" | xargs -r rename "s/old$/archive/"

  • .:نخبر الأمر find ببدء البحث في الدليل الحالي. يمكن أن يكون هذا أي مسار بالطبع.
  • -عمق:استخدم البحث المتعمق أولاً. وهذا يعني أن محتويات الدلائل الفرعية المتداخلة العميقة تتم معالجتها قبل الدلائل الأعلى.
  • -النوع د:البحث عن الدلائل، وليس الملفات.
  • -الاسم “*-قديم”:دليل البحث. نحن نبحث عن الدلائل التي تنتهي أسماؤها بـ “-old”.
  • |:نحن نقوم بنقل الناتج من find إلى xargs يأمر.
  • xargs -r: ال -r (لا تشغيل إذا كان فارغًا) يعني عدم تشغيل الأمر إذا لم تكن هناك أدلة مطابقة.
  • إعادة تسمية “s/old$/archive/”: ال rename الأمر الذي سيتم تشغيله.

تبدو شجرة الدليل لدينا بهذا الشكل قبل الأمر.


شجرة الدليل قبل أمر إعادة التسمية

نحن نقوم بتنفيذ أمرنا:

أمر إعادة التسمية الخاص بنا باستخدام find وxargs وrename

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

شجرة الدليل بعد أمر إعادة التسمية

خيول للدورات

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


أضف تعليق