هل قائمة الدلائل فقط بشكل متكرر في Linux؟

Is List Only Directories Recursively Linux



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

أمثلة على أدلة القائمة البسيطة

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







$ ls -l



لسرد جميع الأدلة والملفات داخل نظام Linux الخاص بك ، يجب عليك استخدام -la بدلاً من simple -l في أمر list. ومن ثم ، قم بتنفيذ الأمر المحدث للقيام بذلك. يعرض الإخراج جميع الملفات والمجلدات بالإضافة إلى المعلومات الإضافية الخاصة بهم.



$ ls -la





لسرد الدلائل ببساطة بدون معلومات إضافية ، جرب الأمر أدناه متبوعًا بالعلامة -d.

$ ls –d * /



يمكنك أيضًا استخدام الأمر نفسه مع تعديل بسيط لسرد المجلدات مع معلوماتها الإضافية. عليك فقط إضافة العلامة -l داخل هذا الأمر على النحو التالي:

$ ls –l –d * /

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

$ ls –l | egrep –v '^ d'

مثال على سرد الدلائل بشكل متكرر

هناك أنواع مختلفة من الأوامر العودية المتاحة في أنظمة Linux ، والتي يمكن استخدامها لسرد الدلائل بشكل متكرر. لفهم كل منها على حدة ، افترض أن لديك 5 ملفات في دليل Linux الخاص بك باسم Documents.

قائمة تكرارية باستخدام علامة -lR

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

$ ls -lR

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

$ ls –lR / الصفحة الرئيسية / aqsayasin / المستندات /

قائمة تكرارية باستخدام البحث عن الأوامر

وضح لنفسك أنه ليست كل أنظمة Linux ، على سبيل المثال ، macOS ، ونظام التشغيل الشبيه بنظام التشغيل Unix ، لديها خيار استخدام -R لسرد الأدلة. في هذه الحالة ، هناك أوامر أخرى متاحة لتلبية احتياجاتنا وهي أمر البحث والطباعة. في هذا الأمر ، سنمنح مسارًا لمجلد مع الاستفادة من استخدام الأمر -ls. عندما يتم استخدام -ls في الأمر ، فهذا يعني أنه سيعرض أيضًا المعلومات الإضافية المتعلقة بالملفات والمجلدات الموجودة في دليل معين. جرب الأمر المذكور أدناه في shell لسرد جميع الملفات والمجلدات الخاصة بمستندات الدليل بشكل متكرر.

find / home / aqsayasin / Documents / -print -ls. $ find / home / aqsayasin / المستندات / -طباعة -ls

الآن ، عليك تجربة نفس التعليمات الموجودة في الغلاف مع تغيير بسيط. سنتجنب استخدام العلامة -ls في هذا الأمر لإيقاف إظهار المعلومات الإضافية المتعلقة بالملفات. قم بتنفيذ الاستعلام المدرج أدناه في shell ، وسيكون لديك الإخراج المعروض.

find / home / aqsayasin / Documents / -print. $ find / home / aqsayasin / المستندات /

قائمة تكرارية باستخدام -du الأمر

دعونا نلقي نظرة على مثال آخر لسرد الملفات أو الدلائل بشكل متكرر باستخدام طريقة جديدة أخرى. هذه المرة ، سنستخدم الأمر -du لتحقيق هدفنا. يحتوي هذا الأمر على علامة -a فيه. إلى جانب الأعلام ، علينا تحديد موقع الدليل أيضًا. دعنا ننفذ التعليمات التالية في Terminal shell لسرد جميع المجلدات أو الملفات الخاصة بمستندات الدليل بشكل متكرر. يظهر الإخراج 5 سجلات لها ، كما هو موضح أدناه. يمكنك أن ترى هذا الأمر يعرض أيضًا عدد العضات الموجودة في كل ملف.

$ du –a / الرئيسية / aqsayasin / المستندات /

قائمة تكرارية باستخدام أمر الشجرة

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

$ tree / الرئيسية / aqsayasin / المستندات /

لنجرب نفس أمر الشجرة مع موقع مختلف. هذه المرة نقوم بإدراج مجلدات دليل 'الصفحة الرئيسية' بشكل متكرر للمستخدم aqsayasin. يُظهر الإخراج فروع المجلد Home التي تحتوي على إجمالي 14 مجلدًا مختلفًا ومجلدات فرعية و 5 ملفات.

$ شجرة / الرئيسية / aqsayasin /

استنتاج

لقد جربنا جميع الطرق العودية لسرد الدلائل والملفات بشكل متكرر ، على سبيل المثال ، -lR flag و find and print و du و tree command