البرمجة

كيفية تقسيم وتعديل السلاسل في ملفات دفعات Windows

لحذف مسار معين من المتغير %path% في ملف دفعات (batch)، يمكنك استخدام الأمر التالي:

batch
@echo off setlocal enabledelayedexpansion set "specialstr=special_part" set "new_path=" for %%i in ("%path:;=" "%") do ( if /i "%%~i" neq "%cd%" ( set "new_path=!new_path!;%%~i" ) ) rem Remove leading semicolon set "new_path=%new_path:~1%" echo %new_path% endlocal

يقوم هذا السكربت بتحليل المتغير %path% باستخدام الفاصلة المنقوطة (;) كفاصل بين القيم، ثم يتحقق من كل قيمة إذا كانت مساوية للمسار الحالي %cd% أو لا، ويضيفها إلى متغير جديد new_path إذا لم تكن.

عند تشغيل هذا السكربت، سيتم طباعة المتغير new_path بمسار %path% المعدل دون المسار الذي تحدده في %cd%.

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

المزيد من المعلومات

بالتأكيد، إليك بعض المعلومات الإضافية حول الدفعات (batch) وكيفية استخدامها في سيناريوهات مختلفة:

  1. تعريف المتغيرات والثوابت:

    • يمكنك تعريف متغيرات باستخدام الأمر set، مثل set var=value.
    • لاستخدام القيمة المخزنة في المتغير، استخدم %var%.
  2. الدورات (Loops):

    • يمكنك استخدام الدورة for لتنفيذ أوامر متكررة، مثل:
      batch
      for %%i in (1 2 3 4 5) do ( echo %%i )
    • يمكنك استخدام for لتحليل سلاسل النصوص، مثل:
      batch
      for %%i in ("one" "two" "three") do ( echo %%i )
  3. الشروط (Conditions):

    • يمكنك استخدام الشرط if لتنفيذ أوامر معينة بناءً على شرط معين، مثل:
      batch
      if %var%==value ( echo "Condition is true" ) else ( echo "Condition is false" )
  4. التأخير وتمكين التأخير المتأخر (Delayed Expansion):

    • يمكنك تمكين التأخير المتأخر باستخدام setlocal enabledelayedexpansion، ثم استخدام !var! بدلاً من %var% داخل الدورات للحصول على القيمة الحالية.
  5. تنفيذ الأوامر الخارجية:

    • يمكنك تنفيذ الأوامر الخارجية مثل برامج أو أدوات من داخل ملف دفعات باستخدام الأمر start، مثل:
      batch
      start notepad.exe

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

زر الذهاب إلى الأعلى