اختبارات الملفات
File Tests
اختبارات الملفات — File Tests
قبل أن تقرأ ملفاً أو تكتب داخله، اسأل النظام عنه. هل موجود؟ هل هو ملف عادي أم مجلد؟ هل يمكن قراءته؟ Bash توفر معاملات اختبار قصيرة داخل [[ ... ]]. الأكثر شيوعاً: -f للملف، -d للمجلد، -r لقابلية القراءة، و-w لقابلية الكتابة.
هذه الاختبارات ليست بيروقراطية. هي الفرق بين سكربت يشرح المشكلة وسكربت يفشل برسالة غامضة. لو طلب المستخدم ملف إعدادات غير موجود، قل له: Config file not found. لا تترك الأمر التالي ينهار ثم تجعله يقرأ خطأ بعيداً عن السبب.
انتبه أيضاً أن الاختبارات يجب أن تقتبس المسار: [[ -f "$config_file" ]]. لو لم تقتبسه وكان المسار يحتوي مسافة، قد يصبح الاختبار خاطئاً أو يفشل قبل أن يصل للمعنى المطلوب.
مثال عملي
في السكربت الحقيقي، قد يكون عدم وجود الملف خطأ يستدعي exit 1. في مثال تعليمي نطبع النتيجة فقط. القرار يعتمد على وظيفة السكربت: هل الملف اختياري أم ضروري؟
ترتيب التحقق
ابدأ بالأكثر أساسية: هل القيمة فارغة؟ ثم هل المسار موجود؟ ثم هل النوع صحيح؟ ثم هل الصلاحية مناسبة؟ هذا الترتيب يجعل الرسائل دقيقة. “المسار فارغ” أوضح من “ليس ملفاً” عندما لم يمرر المستخدم شيئاً أصلاً.