البحث والاستبدال فيم

Vim Search Replace



Vim هو محرر نصوص متقدم وشائع يأتي مثبتًا مسبقًا في معظم توزيعات Linux. وهو محرر نصوص يستند إلى سطر الأوامر ويستخدم في الغالب في أنظمة التشغيل التي لا تعتمد على واجهة المستخدم الرسومية. إنه قابل للتكوين بدرجة عالية ويأتي مع الكثير من الميزات. من النقاط المهمة المتعلقة بـ Vim أنه مُحسَّن بدرجة عالية للتكرار.

في هذه المقالة ، سنشرح واحدة من أكثر ميزاتها فائدة وهي البحث والاستبدال. مع عدد قليل من التهيئة ، يمكنك البحث عن أي شيء تريده بسرعة فائقة وبأدق التفاصيل.







الطريقة الأولى: البحث عن حدث واحد واستبداله في كل مرة (باستخدام أمر الشرطة المائلة والنقطة)

إن أبسط طريقة للبحث عن كلمة واستبدالها في Vim هي باستخدام أمر slash and dot. يمكن استخدام الشرطة المائلة (/) للبحث عن كلمة بينما يمكن استخدام النقطة (.) لاستبدال تلك الكلمة.



اتبع الخطوات البسيطة التالية للبحث عن أي كلمة واستبدالها في محرر Vim:



  • افتح الملف في Vim
  • اضغط على مفتاح الشرطة المائلة (/) جنبًا إلى جنب مع مصطلح البحث مثل / search_term واضغط على Enter. سوف تبرز الكلمة المختارة.
  • ثم تضغط على المفتاح سيجن لاستبدال الكلمة المميزة وإدخال مصطلح الاستبدال
  • ارجع إلى الوضع العادي. بعد ذلك ، اضغط على n للانتقال إلى التكرار التالي لمصطلح البحث.
  • ثم اضغط على النقطة (.) إذا كنت تريد استبدال التكرار التالي بنفس مصطلح replace_term وإلا اضغط مرة أخرى على مفتاح n للانتقال إلى التكرار التالي.

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





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

الطريقة الثانية: البحث والاستبدال باستخدام الأمر البديل

يمكن استخدام الأمر البديل لإجراء بحث أساسي إلى بحث متقدم واستبدال الوظائف بأمر واحد. صيغة هذا الأمر هي:



$/<مصطلح البحث> /<replace_term> /اختيار

لاحظ أنه يجب عليك إدخال هذا الأمر في الوضع العادي.

أين

  • S: تعني البديل
  • search_term: الكلمة التي تريد البحث عنها واستبدالها
  • replace_term: الكلمة التي تريد استبدالها بها
  • الخيار: c (للتأكيد) ، g (استبدل كل التكرارات في سطر واحد) ، i (لتجاهل الحالة)

البحث والاستبدال

لإجراء بحث أساسي واستبدال باستخدام الأمر البديل ، استخدم الصيغة التالية:

:٪س/<مصطلح البحث> /<replace_term> /ز

سيحل هذا الأمر محل جميع مثيلات search_term بالمصطلح 'replace_term'.

على سبيل المثال ، هذا هو نموذج النص لدينا:

يعد Ubuntu أحد أكثر أنظمة تشغيل Linux استخدامًا. يتضمن Ubuntu آلاف البرامج المفيدة. باستخدام سطر أوامر Ubuntu ، يمكنك إنجاز أي نوع من المهام تقريبًا.

لاستبدال كل ظهور لـ Ubuntu بـ Debian في النص التالي ، سيتم استخدام الأمر التالي:

:٪س/أوبونتو/ديبيان/ز

البحث والاستبدال في سطر واحد

للبحث واستبدال حدوث كلمة في سطر واحد فقط بدلاً من الملف بأكمله ، استخدم الصيغة التالية:

/<مصطلح البحث> /replace_term/ز

على سبيل المثال ، لاستبدال ظهور Ubuntu بـ Debian في نموذج النص أعلاه ، سيتم استخدام الأمر التالي بدون رمز٪:

/أوبونتو/ديبيان/ز

البحث والاستبدال مع التأكيد

إذا كنت تريد أن يُطلب منك التأكيد قبل استبدال مصطلح البحث ، فاستخدم c في نهاية أمر البحث كما يلي:

/<مصطلح البحث> /<replace_term> /GC

سيطلب الأمر أعلاه التأكيد قبل كل استبدال (أدخل y للإجابة على 'نعم' بينما n لـ 'لا').

بحث واستبدال غير حساس لحالة الأحرف

عند إجراء البحث والاستبدال في Vim ، يكون الوضع افتراضيًا حساسًا لحالة الأحرف. يمكنك إجراء بحث غير حساس لحالة الأحرف عن طريق إضافة i في نهاية الأمر على النحو التالي:

/<مصطلح البحث> /<replace_term> /يعطى

على سبيل المثال ، للبحث عن مصطلح Ubuntu بغض النظر عن حالته (UBUNTU ، Ubuntu ، ubuntu ، uBuntu) ، سيتم استخدام الأمر التالي:

/أوبونتو/ديبيان/يعطى

ابحث واستبدل الكلمة بأكملها

بشكل افتراضي ، يبحث الأمر البديل عن أي تطابق سواء كان جزئيًا أو كاملًا. لمطابقة مصطلح search_term تمامًا ثم استبدله بالمصطلح 'replace_term' ، قم بتضمين مصطلح البحث داخل.

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

/<أنت> /أنا/

سيجد كلمة أنت ويحل محله معي. ومع ذلك ، لن يحل محل الكلمات مثل كلماتك.

البحث عن الكلمات واستبدالها بين سطور معينة

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

:<خط البداية>و<خط النهاية>س/<مصطلح البحث> /<replace_term> /ز

على سبيل المثال ، للبحث عن تواجد Ubuntu واستبداله بدبيان من سطور تتراوح من 3 إلى 8 في ملف ما ، سيكون الأمر كما يلي:

:1، 10 ثوانٍ/أوبونتو/ديبيان/ز

للبحث واستبدال حدوث كلمة من السطر الحالي إلى عدد الأسطر x التالية ، سيتم استخدام الصيغة التالية:

/مصطلح البحث/replace_term/ز x

وبالمثل ، للبحث واستبدال حدوث كلمة من السطر الحالي إلى السطر الأخير: سيتم استخدام بناء الجملة التالي:

:. ،$ s/مصطلح البحث/replace_term/ز

استنتاج

في هذه المقالة ، تعلمنا طريقتين لسطر الأوامر للبحث عن أي كلمة واستبدالها في محرر Vim. الأمر الأول الذي كان يستخدم الشرطة المائلة والنقطة هو أبسط وأسهل طريقة ولكن تبين أنه متكرر عند البحث عن كلمة واستبدالها مرات عديدة. قد يبدو الأمر الآخر وهو أمر الاستبدال مرة واحدة صعبًا ومعقدًا ، ولكن بمجرد أن تبدأ في ممارسته ، ستجده مفيدًا للغاية في سيناريوهات متعددة.