يركز هذا الدليل على مناقشة وجود ملف في نظامك من خلال البرمجة النصية bash:
كيفية التحقق من وجود الملف باستخدام البرمجة النصية bash:
1) بإدخال اسم الملف في الجهاز:
أولاً ، نحتاج إلى إنشاء ملف نصي bash ، استخدم الأمر المذكور أدناه:
$لمس. اتصال. صلةtestfile.sh
اسم الملف الذي قمت بإنشائه هو testfile.sh ، ويشير ملحق .sh إلى ملف البرنامج النصي shell:
افتح الملف testfile.sh في أي محرر نصوص. ثم اكتب النص ، واحفظه بالضغط على حفظ.
إحدى الطرق هي العثور على ملف عن طريق طلب اسم ملف من المستخدم في الجهاز.
يستخدم -F للتحقق من وجود الملف.
اكتب البرنامج النصي أدناه:
#!/bin/bashرما - طرد - قذف 'أدخل اسم الملف الخاص بك'
اقرأالملف الجديد 1
لو [ -F '$ newfile1' ]
من ثم
رما - طرد - قذف تم العثور على الملف
آخر
رما - طرد - قذف 'الملف غير موجود'
يكون
ارجع إلى المحطة وشغل الملف لطباعة الإخراج:
./filename.shسيتم عرض رسالة رفض الإذن في المحطة.
اجعله قابلاً للتنفيذ عن طريق تنفيذ الأمر المذكور أدناه:
$chmod+ x testfile.sh
أدخل اسم الملف ، وسيقوم بطباعة الإخراج:
2) بإدخال اسم الملف أثناء كتابة السيناريو:
طريقة أخرى للعثور على ملف عن طريق إعطاء اسم الملف أثناء كتابة البرنامج النصي. لدينا ثلاث طرق للتحقق من توفر الملف. الأول يستخدم الأمر test ، والثاني يستخدم if مع تعبير بين قوسين مربعين ، والثالث يستخدم أيضًا مع أقواس مربعة إذا ولكن مزدوجة كما هو موضح أدناه:
- اختبار التعبير.
- إذا [EXPRESSION]
- إذا [[EXPRESSION]]
دعونا نفهمها بأمثلة:
1) اختبار [التعبير]
انسخ النص المحدد والصقه في المحرر ، واحفظه:
اسم الملف= ملف 1
لو اختبار -F 'اسم الملف $'؛
من ثم
رما - طرد - قذف 'ملف $قد وجد.'
آخر
رما - طرد - قذف 'ملف $لم يتم العثور عليه '
يكون
انتاج:
نظرًا لعدم وجود ملف من هذا القبيل في دليلي ، فإن الرمز يعرض رسالة 'لم يتم العثور على الملف'.
2) إذا [التعبير]
انسخ البرنامج النصي التالي للتحقق مما إذا كان الملف موجودًا أم لا:
#!/bin/bashاسم الملف= myfile.txt
لو [ -F 'اسم الملف $' ]؛
من ثم
رما - طرد - قذف 'اسم الملف $قد وجد.'
آخر
رما - طرد - قذف 'لم يتم العثور على اسم الملف'
يكون
انتاج:
3) إذا [[التعبير]]
انسخ النص المكتوب أدناه والصقه على الجهاز:
#!/bin/bashاسم الملف= ملف الاختبار
لو [[ -F 'اسم الملف $' ]]؛
من ثم
رما - طرد - قذف 'اسم الملف $قد وجد.'
آخر
رما - طرد - قذف 'اسم الملف $لم يتم العثور عليه '
يكون
انتاج:
للتحقق من الدليل:
3) عن طريق إدخال اسم الدليل أثناء كتابة السيناريو
استخدم ال -د علامة للتحقق من وجود دليل.
في البرنامج النصي المذكور أدناه ، dir11 هو المتغير الذي تخزن فيه الملف الذي تجده ؛ في هذا المثال ، أريد التحقق من اسم الدليل testDir موجود أم لا.
#!/bin/bashدير 11= testDir
لو [ -د 'درهم 11' ]
من ثم
رما - طرد - قذف 'تم العثور على الدليل'
آخر
رما - طرد - قذف 'لم يتم العثور على الدليل'
يكون
انتاج:
2) بإدخال اسم الملف في الجهاز:
عند تشغيل الأمر في الجهاز للتحقق مما إذا كان الدليل موجودًا أم لا ، فأنت مطالب بإدخال اسم الدليل الذي تبحث عنه:
رما - طرد - قذف 'اكتب اسم الدليل الخاص بك.'
اقرأDir1
لو [ -د 'Dir1' ]
من ثم
رما - طرد - قذف 'تم العثور على الدليل'
آخر
رما - طرد - قذف 'الدليل غير موجود'
يكون
انتاج:
فحص الملف بدون استخدام عبارة if:
يمكن تنفيذ الأمر test بدون عبارة if. سيتم عرض الإخراج فقط إذا كان الملف موجودًا ؛ وإلا فلن يكون هناك إخراج:
اكتب البرنامج النصي:
- اختبار -Fmyfile.txt&& رما - طرد - قذف تم العثور على ملف
- [ -Fmyfile.txt] && رما - طرد - قذف 'ملف $تم العثور على.'
- [[ -Fmyfile.txt]] && رما - طرد - قذف 'ملف $تم العثور على.'
انتاج:
التحقق من الدليل بدون استخدام عبارة if:
استخدم العبارات المذكورة أدناه للتحقق من وجود دليل أم لا:
- [[ -دtestDir]] && رما - طرد - قذف 'الدليل موجود'
- 2) [ -دtestDir] && رما - طرد - قذف 'الدليل موجود'
انتاج:
فحص ملفات / دلائل متعددة:
1) فحص ملفات متعددة باستخدام عبارات if:
استخدم العلامة -a للتحقق من وجود ملفات مختلفة بدلاً من استخدام عبارات if / else المتداخلة:
لو [ -Fnew_file.txt-إلى -Fnewfile.txt]؛من ثم
رما - طرد - قذف 'كلا الملفين موجودان.'
يكون
طريقة أخرى هي:
#!/bin/bashلو [[ -Fnew_file.txt&& -Fnewfile.txt]]؛من ثم
رما - طرد - قذف 'كلا الملفين موجودان.'
يكون
انتاج:
2) فحص ملفات متعددة دون استخدام عبارة if:
استخدم العبارة التالية للتحقق من ملفات متعددة في وقت واحد 1 دون استخدام إذا:
- [[ -Fnew_file.txt&& -Fnewfile.txt]] && رما - طرد - قذفكلا الملفين يخرج.
- [[ -Fnew_file.txt&& -Fnewfile.txt]] && رما - طرد - قذفكلا الملفين يخرج.
انتاج:
استنتاج:
توضح هذه المقالة كيفية استخدام البرمجة النصية bash للتحقق من ملف أو دليل. استخدمنا خيارات مختلفة للتحقق من توفر الملف. أولاً ، نستخدم أمر الاختبار بأعلام مختلفة. ثم تعلمنا استخدام if ، nested if-else ، وبدون عبارات if للتحقق من الملف أو الدليل. نظرنا أيضًا في كيفية التحقق من ملفات أو أدلة متعددة.