5 عبارات IF لاستخدامها لبرامج نصية أكثر ذكاءً لنظام التشغيل Windows

5 عبارات IF لاستخدامها لبرامج نصية أكثر ذكاءً لنظام التشغيل Windows

إذا كنت تقوم بالكثير من العمل في ملفات دفعات Windows ، فإن ملف بيان IF يقدم طريقة فعالة للغاية لإضافة المرونة إلى البرامج النصية الخاصة بك.





في هذه المقالة ستتعرف على الأنواع الخمسة الرئيسية لعبارات IF التي يمكنك استخدامها في ملف دفعي Windows ، وكيف يبدو بناء الجملة الصحيح ، ومثال واقعي لكل منها.





إذا كنت مستعدًا لبدء البرمجة النصية ، فلنبدأ!





1. قارن القيم

أحد الأشياء الأساسية التي ستحتاج عادةً إلى القيام بها في البرنامج النصي الدفعي هو قارن بين قيمتين واتبع مسارًا مختلفًا للعمل بناءً على المقارنة.

على سبيل المثال ، لنفترض أنك تريد كتابة نص برمجي للدفعات يتحقق من حجم القرص الصلب لجهاز الكمبيوتر الخاص بك يوميًا. إذا كان حجمه أقل من 3 غيغابايت ، فأنت تريد الحصول على تقرير بالبريد الإلكتروني يقول ، 'مساحة القرص الصلب منخفضة جدًا'.



لإنشاء نص برمجي يقارن مساحة القرص الصلب الحالية بالحد الخاص بك ، يمكنك إنشاء البرنامج النصي الدفعي التالي وحفظه كملف .bat.

@echo off
set DriveLimit=300000000
for /f 'usebackq delims== tokens=2' %%x in (`wmic logicaldisk where 'DeviceID='C:'' get FreeSpace /format:value`) do set FreeSpace=%%x
Echo FreeSpace='%FreeSpace%'
Echo Limit='%DriveLimit%'
If %FreeSpace% GTR %DriveLimit% (
Echo There is enough free space.
) else (
Echo Not enough free space.
)

WMIC هو مكون Windows Management Instrumentation لنظام Windows الذي يأتي مع مجموعة متنوعة من الأوامر التي يمكنك استخدامها لسحب معلومات الكمبيوتر. هذه هي الطريقة التي يستدعي بها الأمر 'wmic' في هذا البرنامج النصي مساحة 'القرص المنطقي' ويضعها في متغير FreeSpace. الآن يمكنك فقط استبدال السطر 'Echo Not enough space' بأمر بريد إلكتروني صارخ لإرسال تنبيه إليك.





أخيرًا ، قم بإعداد هذا البرنامج النصي كوظيفة مجمعة مجدولة لنظام التشغيل Windows تعمل يوميًا.

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





2. سلسلة المقارنات

إذا كانت المقارنة ذات قيمة أخرى يمكنك القيام بها في وظيفة مجمعة هي مقارنة السلاسل .

في المثال التالي ، سترى كيفية التحقق من إصدار Windows الخاص بك باستخدام وظيفة مجمعة. ثم يمكنك مقارنة هذا بإصدار Windows المتوقع.

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

هذا ما يبدو عليه هذا البرنامج النصي.

@echo off
for /f 'tokens=4-5 delims=. ' %%i in ('ver') do set VERSION=%%i.%%j
if '%version%' == '6.0' echo Windows Vista.
if '%version%' == '6.1' echo Windows 7
if '%version%' == '6.2' echo Windows 8
if '%version%' == '6.3' echo Windows 8.1
if '%version%' == '10.0' echo Windows 10.

هذا ما يبدو عليه إخراج هذا البرنامج النصي.

تفتح القدرة على مقارنة السلاسل دفعة واحدة قائمة كاملة من الاحتمالات. إذا قمت باستكشاف كل من المعلومات التي يمكنك الحصول عليها من أمر WMIC سترى عدد الإحصائيات التي يمكنك مراقبتها حول جهاز الكمبيوتر الخاص بك. يمكنك استخدام وظائف الدُفعات المجدولة للتنبيه عليها.

3. تحقق من وجود ملف

موقف مفيد آخر حيث تكون عبارة IF في ملف دفعي هي تحقق من وجود ملف بيانات .

في كثير من الأحيان ، تكون الوظيفة المجمعة مجرد أداة مراقبة يمكن جدولتها للتحقق من ملفات البيانات الواردة الجديدة في دليل معين.

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

(لقد كتبنا في الماضي عن كيفية القيام بذلك استخدام برامج Windows النصية لمعالجة البيانات إلى ملف Excel ؛ بعض القراءة الجيدة للخلفية.)

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

@echo off
if exist c: empdatafile.txt (
%WINDIR%SysWOW64cmd.exe
cscript LoadToExcel.vbs
) else (
rem file doesn't exist
)

تعد مقارنة IF EXISTS مفيدة لكثير من الأشياء.

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

4. تحقق من فشل الأمر

أحد جوانب البرمجة النصية للملفات الدفعية التي يستخدمها عدد قليل جدًا من خبراء تكنولوجيا المعلومات أو المبرمجين هو التحقق من وجود أخطاء .

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

من الأذكى بكثير أن تتلقى تنبيهًا عندما تفشل المهمة الدفعية في أمر ما قبل يبدأ الناس في الملاحظة. بهذه الطريقة يمكنك إصلاح المشكلة بشكل استباقي.

يمكنك القيام بذلك عن طريق استخدام متغير٪ errorlevel٪ الذي ترجع إليه معظم التطبيقات والأوامر بعد تشغيلها.

كل ما عليك فعله هو اتباع الأمر الخاص بك عن طريق الأمر IF٪ ERRORLEVEL٪. إذا أرجع التطبيق أو الأمر صفرًا ، فسيكون كل شيء على ما يرام. إذا لم يكن كذلك ، فأنت بحاجة إلى إرسال بريد إلكتروني لنفسك.

@echo off
xcopy C:
omefolder E:ackupfolder
IF %ERRORLEVEL% NEQ 0

ليس عليك أن تسلك طريق البريد الإلكتروني. يمكنك دائمًا كتابة سجل أخطاء يمكنك التحقق منه كل صباح ، أو تشغيل تطبيق أو أمر ثانٍ يحاول إجراء النسخ باستخدام أمر بديل. مهما كان الإجراء الذي تريد اتخاذه ، يتيح لك IF٪ ERRORLEVEL٪ القيام بذلك.

إذا كنت تفضل استخدام عبارة IF للتحقق من وجود رموز خطأ معينة ، فإن Windows يقدم ملف قائمة واسعة من رموز الخطأ .

5. تحقق من وجود معلمات مفقودة

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

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

من الواضح أنه لا يمكنك تنفيذ البرنامج النصي الخاص بك بشكل صحيح دون تحديد المسار ، لذلك يمكنك وضع عبارة IF في بداية البرنامج النصي للتأكد من إدخال كلا المعاملين.

إليك كيف يبدو ذلك.

@echo off
IF [%1]==[] (
GOTO sub_message
) ELSE (
xcopy %1 E:ackupfolder
)
GOTO eof
:sub_message
echo You forgot to specify your path.
:eof

إذا لم تستخدم المعلمات مع البرامج النصية المجمعة من قبل ، فإن رمز النسبة المئوية متبوعًا برقم يمثل متغير المعلمة. ٪ 1 هي المعلمة الأولى و٪ 2 هي المعلمة الثانية وهكذا.

يمكن أن تكون الوظائف المجمعة قوية

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

بالطبع إذا كنت تريد حقًا تصعيد الأمر قليلاً ، فقد تفكر في إلقاء نظرة على VBA مع دليلنا على إنشاء تطبيق VBA الأول الخاص بك ، أو ربما تعلم برمجة بايثون.

يمكنك غالبًا استخدام لغات برمجة أكثر تقدمًا مثل هذه ، أو تعلم استخدام PowerShell ، لإنجاز العديد من المهام نفسها التي تستخدم حاليًا وظائف مجمعة لها.

يشارك يشارك سقسقة بريد الالكتروني احذف ملفات ومجلدات Windows هذه لتحرير مساحة على القرص

هل تحتاج إلى إفراغ مساحة القرص على جهاز الكمبيوتر الذي يعمل بنظام Windows؟ فيما يلي ملفات ومجلدات Windows التي يمكن حذفها بأمان لتحرير مساحة على القرص.

اقرأ التالي
مواضيع ذات صلة
  • شبابيك
  • برمجة
  • شبابيك
نبذة عن الكاتب ريان دوبي(تم نشر 942 مقالة)

رايان حاصل على درجة البكالوريوس في الهندسة الكهربائية. لقد عمل 13 عامًا في هندسة الأتمتة ، وخمس سنوات في تكنولوجيا المعلومات ، وهو الآن مهندس تطبيقات. مدير تحرير سابق لـ MakeUseOf ، تحدث في المؤتمرات الوطنية حول تصور البيانات وتم عرضه على التلفزيون والإذاعة الوطنية.

كيفية استعادة خط snapstreak مرة أخرى
المزيد من Ryan Dube

اشترك في نشرتنا الإخبارية

انضم إلى النشرة الإخبارية لدينا للحصول على نصائح تقنية ومراجعات وكتب إلكترونية مجانية وصفقات حصرية!

انقر هنا للاشتراك