كيفية التحقق مما إذا كان الملف أو الدليل موجودًا في برنامج Bash Shell

كيفية التحقق مما إذا كان الملف أو الدليل موجودًا في برنامج Bash Shell

التحقق من وجود ملف أو دليل من نص برمجي Bash

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

النحو والاستخدام

الملفات

للتحقق من وجود ملف ، استخدم الصيغة التالية:

[ -f  ]

[ -f ]يعيد التعبير 0 ، أي ، النجاح إذا كان موجودًا ، وإذا لم يكن موجودًا ، فإنه يُرجع حالة غير صفرية. عادة ، يتم استخدام هذا كشرط في ifالبيان.

if [ -f  ]
then
  
fi

لرفض القيمة التي تم إرجاعها ، ما عليك سوى أن تسبقها -fبعامل نفي ( !).

if [ ! -f  ]
then
  
fi

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

كيفية التحقق مما إذا كان الملف أو الدليل موجودًا في برنامج Bash Shell

كيفية التحقق مما إذا كان الملف أو الدليل موجودًا في برنامج Bash Shell

لاحظ أنه إذا كان الملف المطلوب التحقق منه غير موجود في الدليل الحالي وكان موجودًا في دليل آخر ، فيجب ذكر المسار الكامل للملف بدلاً من اسم الملف فقط.

الدلائل

يتم استخدام بناء جملة مماثل كما هو مستخدم لفحص الملفات لفحص الدلائل.

[ -d  ]

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

if [ -d  ]
then
  
fi

لإلغاء الحالة التي تم إرجاعها ، اسبقها -dبعامل نفي ( !).

if [ ! -d  ]
then
  
fi

سوف يفي الشرط (الحالة 0) في هذه الحالة إذا كان الدليل غير موجود ، وسيفشل (الحالة غير صفرية) إذا كان الدليل موجودًا.

كيفية التحقق مما إذا كان الملف أو الدليل موجودًا في برنامج Bash Shell

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

💡 صيغة bracket ( [...]) المستخدمة هنا هي في الواقع أمر Linux يسمى test. الخيارات -fو -dهي ملامح هذا الأمر. لمزيد من المعلومات ، راجع صفحة دليل الاختبار ( man test).

تحقق من Bash Script

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

يمكن استخدام نفس الصيغ من داخل نص برمجي Bash.

كيفية التحقق مما إذا كان الملف أو الدليل موجودًا في برنامج Bash Shell

يحدد  #!/bin/bash في البداية المترجم الذي سيتم استخدامه عند تنفيذ الملف. على الرغم من أن Bash هي الصدفة الأكثر استخدامًا في الوقت الحاضر ، إلا أن بعض المستخدمين يفضلون الصدفات مثل  zsh، والتي يجب تحديدها بدلاً من bash في بداية هذا الملف.

لمنح أذونات التنفيذ  لهذا الملف ، قم بتشغيل:

chmod +x test.sh

أخيرًا ،  لتنفيذ الملف ، قم بتشغيل:

./test.sh
Tags: #سحق

كيفية تعطيل Ubuntu Dock على Ubuntu 20.04

كيفية تعطيل Ubuntu Dock على Ubuntu 20.04

أحيانًا يكون من الأفضل مغادرة الرصيف والإبحار بعيدًا!

كيفية استخدام CD Command في Linux

كيفية استخدام CD Command في Linux

طريقة سهلة لتغيير الدلائل في Linux من المحطة

كيفية إضافة مفاتيح SSH على أوبونتو 20.04

كيفية إضافة مفاتيح SSH على أوبونتو 20.04

تشرح لك هذه المقالة عملية إضافة مصادقة مفاتيح SSH على خادم Ubuntu 20.04 وتعطيل المصادقة المستندة إلى كلمة المرور.

كيفية تحديث Firefox من Terminal على أجهزة كمبيوتر Ubuntu Linux

كيفية تحديث Firefox من Terminal على أجهزة كمبيوتر Ubuntu Linux

تعرف على كيفية تحديث Firefox من Terminal على كمبيوتر Ubuntu Linux

كيفية تمكين SSH على Ubuntu 20.04

كيفية تمكين SSH على Ubuntu 20.04

الوصول بأمان إلى جهاز Ubuntu الخاص بك من أي مكان

كيفية التحقق مما إذا كان الملف أو الدليل موجودًا في برنامج Bash Shell

كيفية التحقق مما إذا كان الملف أو الدليل موجودًا في برنامج Bash Shell

التحقق من وجود ملف أو دليل من نص برمجي Bash

كيفية تثبيت Google Chrome على Ubuntu 20.04

كيفية تثبيت Google Chrome على Ubuntu 20.04

دليل سريع لتثبيت Google Chrome من سطر الأوامر على Ubuntu 20.04

كيفية إجراء اختبارات السرعة من سطر أوامر Linux باستخدام Speedtest-cli

كيفية إجراء اختبارات السرعة من سطر أوامر Linux باستخدام Speedtest-cli

Speedtest.net هي خدمة لاختبار سرعة اتصالك بالإنترنت. يستخدم خادم speedtest.net قريب للتنزيل

كيفية إنشاء مستخدم Sudo على Ubuntu 20.04 LTS

كيفية إنشاء مستخدم Sudo على Ubuntu 20.04 LTS

امنح امتيازات الجذر لأي مستخدم لديه sudo على Ubuntu 20.04 LTS

كيفية تحديث NodeJS إلى أحدث إصدار في أوبونتو

كيفية تحديث NodeJS إلى أحدث إصدار في أوبونتو

تحديث NodeJS باستخدام APT و NVM.