التحقق من وجود ملف أو دليل من نص برمجي Bash
يستخدم Bash لأتمتة الأوامر التي يتم تنفيذها بانتظام في Linux. يتم استخدام الأوامر المخصصة للعمليات على الملفات / الدلائل بشكل متكرر ، وعادة ، قبل تنفيذ مثل هذا الأمر ، نحتاج إلى التحقق مما إذا كان الملف أو الدليل المعين موجودًا. دعونا نرى كيفية إجراء هذا الفحص.
النحو والاستخدام
الملفات
للتحقق مما إذا كان الملف موجودًا، استخدم الصيغة التالية:
[ -F ]
التعبير [ -F ]
تُرجع 0 ، أي ، النجاح إذا موجود ، وإذا لم يكن موجودًا ، فإنه يعرض حالة غير صفرية. عادة ، يتم استخدام هذا كشرط في
إذا
بيان.
إذا [-f] ثم fi
لنفي القيمة التي تم إرجاعها، ببساطة تسبق -F
مع عامل النفي (!
).
إذا [ ! -f] ثم fi
في هذه الحالة ، سوف يفي الشرط إذا كان الملف غير موجود، نظرًا لأن الحالة التي تم إرجاعها غير الصفر (خطأ) سيتم إبطالها وتعتبر 0 (صواب).
لاحظ أنه إذا كان الملف المطلوب التحقق منه غير موجود في الدليل الحالي وكان موجودًا في دليل آخر ، فيجب ذكر المسار الكامل للملف بدلاً من اسم الملف فقط.
الدلائل
يتم استخدام بناء جملة مماثل كما هو مستخدم لفحص الملفات لفحص الدلائل.
[ -د ]
على غرار بيان الملفات ، تُرجع هذه العبارة 0 ، أي ، النجاح ، إذا كان الدليل موجود ، وغير الصفر ، أي يتم إرجاع حالة الفشل إذا لم تكن موجودة. يستخدم هذا أيضًا بشكل شائع في ملف
إذا
بيان الشرط.
إذا [-d] ثم fi
لإلغاء الحالة التي تم إرجاعها ، اسبق -د
مع عامل النفي (!
).
إذا [ ! -d] ثم fi
سوف يفي الشرط (الحالة 0) في هذه الحالة إذا كان الدليل غير موجود ، وسيفشل (الحالة غير صفرية) إذا كان الدليل موجودًا.
كما ذكرنا من قبل بالنسبة للملفات ، إذا كان الدليل المراد التحقق منه موجودًا في موقع آخر وليس الدليل الحالي ، فيجب إدخال مسار الدليل بالكامل بدلاً من اسم الدليل فقط.
صيغة القوس ( [...]
) المستخدم هنا هو في الواقع أمر Linux يسمى اختبار
. الخيارات -F
و -د
هي ميزات هذا الأمر. لمزيد من المعلومات ، راجع صفحة دليل الاختبار ( اختبار الرجل
).
تحقق من Bash Script
في الأمثلة أعلاه ، استخدمنا التركيبات مباشرة على الجهاز. الصدفة كلما واجهت حلقة أو تعليمة شرطية (إذا
في حالتنا) ، فإنه يستمر في المطالبة ويسمح للمستخدم بالدخول إلى متابعة الكتلة.
يمكن استخدام نفس الصيغ من داخل نص برمجي Bash.
ال #! / بن / باش
في البداية يحدد المترجم الذي سيتم استخدامه عند تنفيذ الملف. على الرغم من أن Bash هي الصدفة الأكثر استخدامًا في الوقت الحاضر ، إلا أن بعض المستخدمين يفضلون الصدفات مثل zsh
، والتي يجب تحديدها مكان bash في بداية هذا الملف.
لإعطاء أذونات التنفيذ لهذا الملف ، قم بتشغيل:
chmod + x test.sh
أخيرا، لتنفيذ الملف، يركض:
./test.sh