ما هي أفضل وسيلة أو طريقة للبحث عن كلمة معينة في مصدر برنامج؟

StackOverflow https://stackoverflow.com/questions/231189

  •  04-07-2019
  •  | 
  •  

سؤال

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

هل كانت مفيدة؟

المحلول

ونلقي نظرة على ACK ، الذي تم تصميمه للبحث codebases كبيرة.

لاستبدال، والنظر في -i بيرل، -p والأعلام -e. يمكنك أن تفعل أشياء مثل:

$ perl -i -p -e's/\bthisword\b/thatword/g' $(find . -name *.html)

لاستبدال كافة مثيلات thisword مع thatword في جميع ملفات .html في الشجرة.

نصائح أخرى

وأفترض أنك تنوي إعادة تسمية متغير.

وذلك يعتمد على ما هو الجسم من التعليمات البرمجية. لC #، أداة إعادة تسمية البصرية ستوديو هو جيد جدا. تذكر أن من أجل أن تعمل بشكل صحيح، كنت في حاجة إلى إعادة تسمية للعمل جنبا إلى جنب مع مترجم / مترجم، لذلك يمكنك التأكد من إجراء سوى تغيير في نطاق الصحيح.

وإذا كان اكتشاف بسيط جدا / محل، من المؤكد أن المفكرة المتواضع أن تقوم بعمل موافق؟

وfind وgrep سوف تجد الكلمة التي تبحث عنها، ولكن ليحل محله تحتاج إلى استخدام sed، awk أو المفضلة لمرشح تيار التحرير.

وgroovy، python، perl سوف نفعل كل بحث / استبدال العمليات - استخدام المفضلة لديك أو اختيار واحد لمعرفة

.

لعمليات على قاعدة الرمز، سوف تستخدم find | sed لعمليات بسيطة (cygwin هو صديقك) والبحث في IDE ل / استبدال الدعم رجإكس لمزيد من العمليات المعقدة. الكسوف، فكرة، فيجوال ستوديو وحتى SQL خادم Manglement ستوديو لديها بحث قوي / استبدال الوظائف. الأخبار السيئة هي أنه ليس كل من لهم استخدام نفس بناء الجملة رجإكس.

ونلقي نظرة إلى PowerGrep ... لديها إعلانات في كل مكان في SO. أنا بدأت ترغب في ذلك حتى عندما كنت لا تحتاج حقا -

وPD: لديهم 15 يوما التجريبي المجاني، حتى إذا كان هذا هو وظيفة الصغيرة التي يمكن أن تستخدم فقط التجريبي

.

وهذا مجرد غيض إلى answer.could اندي فوق قبلت تقم بإضافة هذا كتعليق بسبب أقل سمعة

استخدم! كما المفرق عندما يكون لديك وقت صعب الهروب من السلاسل

ومنها مثلا $ بيرل -i -p -e المفضل \ bthisword \ ب! thatword! ز '$ (العثور عليها. -اسم *. هتمل)

وإيجاد والبقرى لا تبني indecies، حتى انهم دائما ما يكون أبطأ من البدائل التي لا. أن قال، أنها تعمل بشكل جيد إذا مصدر برنامج الخاص بك هو فقط بضع عشرات files.in فاي

والكسوف لديها لطيفة ميزة بحث ملف (السيطرة + H). ويمكن أيضا أن تأخذ دلالات اللغة في الاعتبار إذا كان لديك الإضافات الصحيحة (جافا يعمل من خارج منطقة الجزاء، وبطبيعة الحال). التحذير الوحيد هو أنه يمكن أن تكون بطيئة بعض الشيء في المرة الأولى التي بحث في مجموعة معينة من الملفات.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top