هذا هو الأمر ack-grepp الذي يمكن تشغيله في مزود الاستضافة المجانية OnWorks باستخدام إحدى محطات العمل المجانية المتعددة على الإنترنت مثل Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت
برنامج:
اسم
ack - مكتشف نص يشبه grep
موجز
ack [خيارات] نمط [ملف ...]
ack -f [خيارات] [دليل ...]
الوصف
تم تصميم Ack كبديل لـ البقرى للمبرمجين.
يبحث Ack في ملفات الإدخال المسماة (أو الإدخال القياسي إذا لم يتم تسمية أي ملفات ، أو الملف
الاسم - يُعطى) للأسطر التي تحتوي على تطابق مع النمط المحدد. افتراضيا ، ack
يطبع الخطوط المطابقة.
PATTERN هو تعبير نمطي لـ Perl. توجد التعابير النمطية للغة Perl بشكل شائع في
لغات البرمجة الأخرى ، ولكن لمعرفة تفاصيل سلوكها ، يرجى الرجوع إليها
<http://perldoc.perl.org/perlreref.html| بيرلريف>. إذا كنت لا تعرف كيفية استخدام العادية
التعبير لكنك مهتم بالتعلم ، يمكنك استشارة
<http://perldoc.perl.org/perlretut.html| بيرلريتوت>. إذا كنت لا تحتاج أو تريد استخدام ack
التعبيرات العادية ، يرجى مراجعة الخيار "-Q" / "- literal".
يمكن لـ Ack أيضًا سرد الملفات التي سيتم البحث عنها ، دون البحث عنها فعليًا ، للسماح بملفات
يمكنك الاستفادة من إمكانيات تصفية نوع الملف الخاص بـ ack.
FILE اختيار
إذا لم يتم تحديد الملفات للبحث ، إما في سطر الأوامر أو مدمج بامتداد
خيار "-x" ، ACK يتعمق في الدلائل الفرعية ويختار الملفات للبحث.
ACK ذكي فيما يتعلق بالملفات التي يبحث عنها. يعرف عن أنواع معينة من الملفات ، على أساس
على كل من امتداد الملف ، وفي بعض الحالات ، محتويات الملف. هؤلاء
يمكن إجراء التحديدات باستخدام امتداد --نوع الخيار.
مع عدم اختيار الملف ، ACK يبحث من خلال الملفات العادية التي لم يتم البحث عنها بشكل صريح
مستبعد من قبل - اجنور دير - تجاهل ملف الخيارات ، سواء كانت موجودة في أكرك الملفات أو على
سطر الأوامر.
الخيارات الافتراضية لـ ACK تجاهل ملفات وأدلة معينة. وتشمل هذه:
ملفات النسخ الاحتياطي: ملفات مطابقة # * # أو تنتهي بـ ~.
· Coredumps: مطابقة الملفات نواة. \ د +
نسخة السيطرة مثل الدلائل .svn . بوابة.
يجري ACK مع خيار "تفريغ" لمعرفة الإعدادات التي تم تعيينها.
ومع ذلك، ACK يبحث دائمًا عن الملفات الواردة في سطر الأوامر ، بغض النظر عن نوعها. لو
أنت تقول ACK للبحث في coredump ، فإنه سيبحث في coredump.
الدليل اختيار
ACK ينزل من خلال شجرة الدليل لأدلة البداية المحددة. إذا كان الجواب لا
يتم تحديد الدلائل ، يتم استخدام دليل العمل الحالي. ومع ذلك ، سوف يتجاهل
أدلة الظل المستخدمة من قبل العديد من أنظمة التحكم في الإصدارات وأدلة الإنشاء
يستخدمه نظام Perl MakeMaker. يمكنك إضافة أو إزالة دليل من هذه القائمة مع
هيه - [لا] تجاهل دير خيار. يمكن تكرار الخيار لإضافة / إزالة أدلة متعددة
من قائمة التجاهل.
للحصول على قائمة كاملة بالأدلة التي لا يتم البحث عنها ، قم بتشغيل "ack --dump".
متى إلى استخدام GREP
ACK ينسخ البقرى كأداة يومية بنسبة 99٪ من الوقت ، لكن لا ترميها البقرى بعيدا ، لأن
هناك أوقات ستظل بحاجة إليها.
على سبيل المثال ، البحث في الملفات الضخمة بحثًا عن regexes التي يمكن التعبير عنها البقرى
يجب أن يكون بناء الجملة أسرع مع البقرى.
إذا كان البرنامج النصي أو البرنامج الأصل يستخدم البقرى "- هادئ" أو "- صامت" أو يحتاج إلى مخرج 2 في الإدخال / الإخراج
خطأ ، استخدم البقرى.
OPTIONS
--ackrc
يحدد ملف ackrc ليتم تحميله بعد كل الملفات الأخرى ؛ راجع "عوامل موقع ACKRC".
-A NUM, - بعد السياق =NUM
طباعة NUM أسطر سياق لاحق بعد مطابقة الأسطر.
-B NUM, - قبل السياق =NUM
طباعة NUM خطوط السياق الرئيسي قبل مطابقة السطور.
--[بدون استراحة
اطبع فاصلًا بين النتائج من ملفات مختلفة. يتم تشغيله بشكل افتراضي عند استخدامه
بشكل تفاعلي.
-C [NUM], - سياق [=NUM]
طباعة NUM سطور (افتراضي 2) من السياق حول الخطوط المطابقة.
-c, --عدد
قمع الإخراج العادي ؛ بدلاً من ذلك ، اطبع عددًا من الأسطر المطابقة لكل ملف إدخال.
If -l سارية المفعول ، ستظهر فقط عدد الأسطر لكل ملف يحتوي على سطور
مطابقة. بدون -l، قد تكون بعض أعداد الخطوط أصفارًا.
إذا تم دمجها مع -h (--لا يوجد اسم ملف) ينتج ack عدد إجمالي واحد فقط.
- [لا] لون, - [لا] لون
--اللون يبرز النص المطابق. --نوول يقمع اللون. هذا على
الافتراضي ما لم يتم إعادة توجيه الإخراج.
في Windows ، يكون هذا الخيار متوقفًا عن التشغيل افتراضيًا ما لم تكن الوحدة النمطية Win32 :: Console :: ANSI هي
مثبتة أو يتم استخدام متغير البيئة "ACK_PAGER_COLOR".
- اسم الملف الملون =اللون
يضبط اللون الذي سيتم استخدامه لأسماء الملفات.
- تطابق اللون =اللون
يضبط اللون الذي سيتم استخدامه للمباريات.
- لون لينينو =اللون
يضبط اللون الذي سيتم استخدامه لأرقام الأسطر.
- عمود [لا]
إظهار رقم العمود الخاص بالمطابقة الأولى. هذا مفيد للمحررين الذين يمكنهم وضع
مؤشرك في موضع معين.
--إنشاء- ackrc
تفريغ خيارات ack الافتراضية إلى الإخراج القياسي. هذا مفيد عندما تريد
تخصيص الافتراضيات.
--أحمق
يكتب قائمة الخيارات التي تم تحميلها ومن أين أتوا إلى الإخراج القياسي. مفيد
للتصحيح.
- [لا] حسد
- noenv تعطيل كافة عمليات معالجة البيئة. لا .ackrc يقرأ وجميع البيئة
يتم تجاهل المتغيرات. بشكل افتراضي، ACK وتعتبر .ackrc والإعدادات في
بيئة.
- دافق
- دافق يغسل الإخراج على الفور. يتم إيقاف هذا بشكل افتراضي ما لم يكن ack قيد التشغيل
بشكل تفاعلي (عندما ينتقل الإخراج إلى أنبوب أو ملف).
-f اطبع فقط الملفات التي سيتم البحث عنها ، دون القيام بأي بحث فعليًا.
يجب عدم تحديد PATTERN ، وإلا فسيتم اعتباره مسارًا للبحث.
- ملفات من =FILE
قائمة الملفات المراد البحث عنها محددة في FILE. قائمة الملفات هي
مفصولة بأسطر جديدة. لو FILE هي "-" ، يتم تحميل القائمة من الإدخال القياسي.
- [لا] مرشح
يجبر ack على التصرف كما لو كان يتلقى مدخلات عبر أنبوب.
--[لا اتباع
اتبع الارتباطات الرمزية أو لا تتبعها ، بخلاف ملفات أو أدلة البداية
تم تحديدها في سطر الأوامر.
هذا هو إيقاف افتراضيا.
-g نمط
طباعة الملفات حيث يتطابق المسار النسبي + اسم الملف نمط. يمكن أن يكون هذا الخيار
جنبا إلى جنب مع --اللون لتسهيل تحديد المباراة.
- [لا] مجموعة
--مجموعة يتطابق مع اسم الملف. هذا هو الإعداد الافتراضي عند استخدامه بشكل تفاعلي.
--nogroup يطبع نتيجة واحدة في كل سطر ، مثل grep. هذا هو الإعداد الافتراضي عندما يكون الإخراج
إعادة توجيه.
-H, - مع اسم ملف
اطبع اسم الملف لكل مباراة. هذا هو الإعداد الافتراضي ما لم يتم البحث عن واحدة
ملف محدد صراحة.
-h, --لا يوجد اسم ملف
قم بإلغاء وضع بادئة لأسماء الملفات عند البحث عن ملفات متعددة.
- [لا] عنوان
اطبع عنوان اسم ملف أعلى نتائج كل ملف. هذا هو الإعداد الافتراضي عند استخدامه
بشكل تفاعلي.
--مساعدة, -?
اطبع بيان تعليمات قصير.
- أنواع المساعدة, --مساعدة = أنواع
طباعة جميع الأنواع المعروفة.
-i, - أقل من حالة
تجاهل تمييزات الحالة في PATTERN
- تجاهل الافتراضات
يخبر ack بتجاهل التعريفات الافتراضية المتوفرة مع ack. هذا هو
مفيد في تركيبة مع --إنشاء- ackrc إذا كنت في الحقيقة تريد تخصيص ack.
- [لا] تجاهل دير =ديرنام, - [لا] تجاهل الدليل =ديرنام
تجاهل الدليل (حيث يتم تجاهل CVS ، .svn ، إلخ). يمكن استخدامه عدة مرات للتجاهل
أدلة متعددة. على سبيل المثال ، قد يرغب مستخدمو الماسون في تضمين ملفات --ignore-dir = بيانات.
تشير - noignore- دير يسمح الخيار للمستخدمين بالبحث في الدلائل التي عادة ما تكون
تم تجاهله (ربما للبحث في محتويات .svn / الدعائم الدلائل).
تشير ديرنام يجب أن يكون دائمًا اسم دليل بسيطًا. الدلائل المتداخلة مثل فو / بار
غير مدعومة. سوف تحتاج إلى التحديد --ignore-dir = foo ثم لا توجد ملفات من
يتم أخذ أي دليل foo في الاعتبار بواسطة ack ما لم يتم تقديمه صراحة في الأمر
الخط.
- تجاهل ملف =نوع الفلتر: مرشحات
تجاهل الملفات المطابقة نوع الفلتر: مرشحات. يتم تحديد المرشحات بشكل مماثل لـ
مرشحات نوع الملف كما هو موضح في "تحديد الأنواع الخاصة بك".
-k, - أنواع معروفة
قصر الملفات المحددة على الأنواع التي يعرفها ack. هذا يعادل
السلوك الافتراضي الموجود في ack 1.
- الخطوط =NUM
فقط خط الطباعة NUM من كل ملف. يمكن إعطاء أسطر متعددة بعدة --خطوط
خيارات أو كقائمة مفصولة بفواصل (- الخطوط = 3,5,7،XNUMX،XNUMX). - الخطوط = 4-7 يعمل أيضا. ال
يتم إخراج الأسطر دائمًا بترتيب تصاعدي ، بغض النظر عن الترتيب الوارد في الأمر
الخط.
-l, - ملفات مع مباريات
اطبع فقط أسماء الملفات المطابقة ، بدلاً من النص المطابق.
-L, - ملفات بدون مطابقات
اطبع فقط أسماء الملفات التي تقوم بذلك لا المباراة.
--تطابق نمط
تحديد نمط صراحة. هذا مفيد إذا كنت لا تريد وضع regex كـ
الحجة الأولى الخاصة بك ، على سبيل المثال عند تنفيذ عمليات بحث متعددة على نفس مجموعة الملفات.
# البحث عن foo و bar في الملفات المحددة
ack file1 t / file * - تطابق foo
ack file1 t / file * - شريط المطابقة
م =NUM, --الحد الأقصى =NUM
توقف عن قراءة ملف بعد NUM اعواد الكبريت.
--رجل
اطبع صفحة الدليل هذه.
-n, - لا تتكرر
لا تنازلي في الدلائل الفرعية.
-o أظهر فقط الجزء المطابق من كل سطر لـ PATTERN (يوقف تمييز النص)
- الخرج =على سبيل المثال
إخراج تقييم على سبيل المثال لكل سطر (يوقف تمييز النص) If PATTERN
يطابق أكثر من مرة ثم يتم إخراج سطر لكل مطابقة غير متداخلة. للمزيد من
المعلومات الرجاء مراجعة قسم "أمثلة على --انتاج".
- صفحة =برنامج, - نوبيجر
--بيجر يوجه إخراج ack من خلال برنامج. يمكن أيضًا تحديد ذلك عبر ملف
متغيرات البيئة "ACK_PAGER" و "ACK_PAGER_COLOR".
لا يؤدي استخدام --pager إلى منع التجميع والتلوين مثل إخراج الأنابيب على ملف
سطر الأوامر يفعل.
- نوبيجر يلغي أي مكان في ~ / .ackrc، "ACK_PAGER" أو "ACK_PAGER_COLOR". لا
سيتم إرسال الإخراج من خلال جهاز بيجر.
--تمر من خلال
يطبع كل الأسطر ، سواء كانت متطابقة مع التعبير أم لا. تسليط الضوء لا يزال
العمل ، على الرغم من ذلك ، يمكن استخدامه لإبراز التطابقات مع الاستمرار في رؤية الكل
ملف ، مثل:
# شاهد ملف سجل ، وقم بتمييز عنوان IP معين
الذيل -f ~ / access.log | AK - باسشترو 123.45.67.89
--print0
يعمل فقط مع -f أو -g أو -l أو -c (إخراج اسم الملف). أسماء الملفات
إخراج مفصول ببايت فارغ بدلاً من السطر الجديد المعتاد. هذا مفيد عندما
التعامل مع أسماء الملفات التي تحتوي على مسافات ، على سبيل المثال
# إزالة جميع الملفات من نوع html
ack -f --html --print0 | xargs -0 جمهورية مقدونيا -f
-Q, - حرفي
اقتبس جميع الأحرف الأولية في PATTERN ، يتم التعامل معها على أنها حرفية.
-r, -R, --يعيد تنفيذ
أعد إلى الدلائل الفرعية. هذا هو الإعداد الافتراضي وهنا فقط للتوافق مع
grep. يمكنك أيضًا استخدامه للدوران - لا تتكرر إيقاف.
-s منع رسائل الخطأ حول الملفات غير الموجودة أو غير القابلة للقراءة. هذا مأخوذ من
com.fgrep.
- [لا] حافظة ذكية, --لا حالة ذكية
تجاهل الحالة في سلاسل البحث إذا كان PATTERN لا يحتوي على أحرف كبيرة. هذا هو
على غرار "smartcase" في vim. يكون هذا الخيار متوقفًا عن التشغيل افتراضيًا ، ويتم تجاهله إذا كانت "-i" كذلك
محدد.
-i دائما يتجاوز هذا الخيار.
- فرز الملفات
يفرز الملفات الموجودة بطريقة معجمية. استخدم هذا إذا كنت تريد قوائم الملفات الخاصة بك
كن حتمية بين أشواط ACK.
- عرض أنواع
لإخراج أنواع الملفات التي يقرنها ack مع كل ملف.
يعمل مع -f -g خيارات.
- النوع = [لا] TYPE
حدد أنواع الملفات المراد تضمينها أو استبعادها من البحث. TYPE هو نوع ملف ،
مثل بيرل or XML. - النوع = بيرل يمكن أيضًا تحديدها كـ --بيرلو - النوع = noperl يمكن
يتم القيام به كما - نوبرل.
إذا كان الملف من النوعين "foo" و "bar" ، فسيؤدي تحديد --foo و --nobar إلى استبعاد
الملف ، لأن الاستبعاد له الأسبقية على التضمين.
يمكن تكرار مواصفات النوع وهي ORed معًا.
يرى ACK --مساعدة = أنواع للحصول على قائمة الأنواع الصالحة.
- اكتب إضافة النوع:منقي:عوامل التصفية
يتم التعرف على الملفات ذات FILTERARGS المحددة المطبقة على عامل التصفية المحدد على أنها من
(الموجود) اكتب TYPE. راجع أيضًا "تحديد الأنواع الخاصة بك".
- نوع مجموعة النوع:منقي:عوامل التصفية
يتم التعرف على الملفات ذات FILTERARGS المحددة المطبقة على عامل التصفية المحدد على أنها من
اكتب TYPE. يحل هذا محل تعريف موجود للنوع TYPE. راجع أيضًا "التعريف
أنواعك الخاصة ".
- نوع ديل النوع
تمت إزالة المرشحات المرتبطة بـ TYPE من Ack ، ولم تعد تعتبر
لعمليات البحث.
-v, - عكس المباراة
عكس المطابقة: حدد الأسطر غير المطابقة
--الإصدار
عرض الإصدار ومعلومات حقوق النشر.
-w, - word-regexp
فرض PATTERN لمطابقة الكلمات الكاملة فقط. النمط ملفوف بـ "\ b"
الحروف الأولية.
-x اختصار لـ - ملفات من = -؛ تتم قراءة قائمة الملفات المراد البحث عنها من المعيار
الإدخال ، بسطر واحد لكل ملف.
-1 التوقف بعد الإبلاغ عن أول مباراة من أي نوع. هذا يختلف عن - الحد الأقصى = 1
or م 1، حيث يتم عرض تطابق واحد فقط لكل ملف. أيضًا، -1 يعمل مع -f -g، حيث
-m لا.
- thpppt
اعرض شعار Bill The Cat المهم للغاية. لاحظ أن التهجئة الدقيقة لـ
- thpppppt ليس مهما. تم فحصه مقابل تعبير عادي.
--حاجِز
تحقق مع الأدميرال من الفخاخ.
- كاثي
شوكولاتة ، شوكولاتة ، شوكولاتة!
ال .ackrc FILE
تشير .ackrc يحتوي الملف على خيارات سطر الأوامر التي تم إلحاقها بسطر الأوامر
قبل المعالجة. قد تعيش خيارات متعددة على أسطر متعددة. الخطوط التي تبدأ بعلامة #
يتم تجاهلها. أ .ackrc قد يبدو مثل هذا:
# دائما فرز الملفات
- فرز الملفات
# تلوين دائمًا ، حتى لو كان الأنابيب إلى برنامج آخر
--اللون
# استخدم "less -r" جهاز النداء الخاص بي
- الصفحة = أقل -r
لاحظ أن الحجج التي تحتوي على مسافات لا تحتاج إلى الاستشهاد بها ، لأنها ليست كذلك
فسرها القذيفة. في الأساس ، كل خط في ال .ackrc يتم تفسير الملف على أنه واحد
عنصرARGV.
ACK يبحث في عدة مواقع عن .ackrc الملفات. عملية البحث مفصلة في
"عوامل موقع ACKRC". لا تعتبر هذه الملفات إذا - noenv محدد في
سطر الأوامر.
تعريف لك الخاصة أنواع
يسمح لك ack بتحديد الأنواع الخاصة بك بالإضافة إلى الأنواع المحددة مسبقًا. لقد انتهى هذا
مع خيارات سطر الأوامر التي من الأفضل وضعها في ملف .ackrc ملف - فلا داعي لذلك
حدد أنواعك مرارًا وتكرارًا. في الأمثلة التالية ، ستظل الخيارات دائمًا
يتم عرضها في سطر أوامر واحد بحيث يمكن نسخها ولصقها بسهولة.
ACK --بيرل فو يبحث عن foo في جميع ملفات perl. ACK --مساعدة = أنواع يخبرك ، أن بيرل
الملفات هي ملفات تنتهي بـ .pl أو .pm أو .pod أو .t. فماذا إذا كنت ترغب في تضمين .xs
وكذلك عند البحث عن ملفات --perl؟ ACK - اكتب إضافة perl: ext: xs --بيرل فو هل
هذا لك. - اكتب إضافة إلحاق ملحقات إضافية بنوع موجود.
إذا كنت تريد تحديد نوع جديد ، أو إعادة تعريف نوع موجود بالكامل ، فاستخدم
- نوع مجموعة. ACK - نوع مجموعة إيفل: ext: e، eiffel يحدد النوع إيفل لتضمين الملفات
مع الامتدادات .e أو .eiffel. لذلك للبحث عن جميع ملفات eiffel التي تحتوي على الكلمة
استخدام برتراند ACK - نوع مجموعة إيفل: ext: e، eiffel - ايفل برتراند. كالعادة ، يمكنك أيضًا
اكتب - النوع = إيفل بدلا من - ايفل. النفي يعمل كذلك - نويفل يستثني الجميع
ملفات eiffel من البحث. إعادة التعريف تعمل أيضًا: ACK - نوع مجموعة نسخة إلى: تحويلة: ج ، ح .xs ملفات
لم تعد تنتمي إلى النوع cc.
عند تحديد الأنواع الخاصة بك في ملف .ackrc الملف لديك لاستخدام ما يلي:
--type-set = eiffel: ext: e، eiffel
أو الكتابة في سطور منفصلة
- نوع مجموعة
إيفل: ext: e، eiffel
ما يلي يفعل لا العمل في .ackrc ملف:
- من نوع إيفل: ext: e، eiffel
لمشاهدة جميع الأنواع المحددة حاليًا ، استخدم - أنواع المساعدة، على سبيل المثال ACK - نوع مجموعة
النسخ الاحتياطي: تحويلة: باك - اكتب إضافة perl: تحويلة: perl - أنواع المساعدة
بالإضافة إلى التصفية على أساس الامتداد (مثل ack 1.x المسموح به) ، تقدم ack 2
أنواع فلاتر إضافية. الصيغة العامة هي - نوع مجموعة النوع: فلتر: FILTERARGS;
عوامل التصفية يعتمد على قيمة منقي.
هو:اسم الملف
is المرشحات تطابق اسم الملف الهدف تماما. يتطلب الأمر حجة واحدة بالضبط ، وهي
اسم الملف المراد مطابقته.
على سبيل المثال:
- نوع المجموعة: هو: Makefile
تحويلة:تمديد[,تمديد 2[، ...]]
تحويلة تتطابق المرشحات مع امتداد الملف الهدف مقابل قائمة الامتدادات. لا
هناك حاجة إلى نقطة البادئة للتمديدات.
على سبيل المثال:
- type-set perl: ext: pl، pm، t
اللعبة:نمط
مباراة تتطابق عوامل التصفية مع اسم الملف الهدف مقابل تعبير عادي. العادية
التعبير غير حساس لحالة الأحرف للبحث.
على سبيل المثال:
- نوع المجموعة: match: / (gnu)؟ makefile /
الخط الأول:نمط
أول مباراة يطابق السطر الأول من الملف الهدف مقابل تعبير عادي.
اعجاب مباراة، يصبح التعبير النمطي غير حساس لحالة الأحرف.
على سبيل المثال:
- type-add perl: firstlinematch: / perl /
قد يتم توفير المزيد من أنواع الفلاتر في المستقبل.
البيئة المتغيرات
بالنسبة لخيارات ack شائعة الاستخدام ، يمكن لمتغيرات البيئة أن تجعل الحياة أسهل بكثير. هؤلاء
يتم تجاهل المتغيرات إذا - noenv محدد في سطر الأوامر.
ACKRC
يحدد موقع المستخدم .ackrc ملف. إذا كان هذا الملف غير موجود ، ACK
يبحث في الموقع الافتراضي.
ACK_OPTIONS
يحدد هذا المتغير الخيارات الافتراضية التي سيتم وضعها أمام أي خيارات صريحة
في سطر الأوامر.
ACK_COLOR_FILENAME
يحدد لون اسم الملف عند طباعته --مجموعة وضع. بشكل افتراضي،
إنه "أخضر جريء".
السمات المعترف بها واضحة ، إعادة تعيين ، غامقة ، غامقة ، تسطير ، تسطير أسفل السطر ، وميض ،
معكوس ، أسود مخفي ، أحمر ، أخضر ، أصفر ، أزرق ، أرجواني ، on_black ، on_red ،
on_green و on_yellow و on_blue و on_magenta و on_cyan و on_white. الحالة ليست كذلك
بارِز. التسطير والشرطة السفلية متكافئان ، كما هو واضح وإعادة التعيين. ال
يقوم اللون وحده بتعيين لون المقدمة ، ويقوم on_color بتعيين لون الخلفية.
يمكن أيضًا تعيين هذا الخيار مع - اسم ملف اللون.
ACK_COLOR_MATCH
يحدد لون النص المطابق عند طباعته --اللون وضع. بشكل افتراضي،
إنه "أسود على أصفر".
يمكن أيضًا تعيين هذا الخيار مع - تطابق اللون.
يرى ACK_COLOR_FILENAME لمواصفات اللون.
ACK_COLOR_LINENO
يحدد لون رقم السطر عند طباعته --اللون وضع. بشكل افتراضي ، هو
"أصفر غامق".
يمكن أيضًا تعيين هذا الخيار مع - لون لينينو.
يرى ACK_COLOR_FILENAME لمواصفات اللون.
ACK_PAGER
تحديد برنامج بيجر ، مثل "أكثر" أو "أقل" أو "معظم" ، والذي سيرسل إليه ack
ناتجها.
لا يؤدي استخدام "ACK_PAGER" إلى منع التجميع والتلوين مثل إخراج الأنابيب على ملف
يفعل سطر الأوامر ، باستثناء أنه في Windows ack سيفترض أن "ACK_PAGER" لا يفعل ذلك
دعم اللون.
يتجاوز "ACK_PAGER_COLOR" "ACK_PAGER" إذا تم تحديد كلاهما.
ACK_PAGER_COLOR
يحدد برنامج بيجر يفهم تسلسلات ألوان ANSI. استخدام
لا يمنع "ACK_PAGER_COLOR" التجميع والتلوين مثل إخراج الأنابيب على ملف
سطر الأوامر يفعل.
إذا لم تكن تستخدم Windows ، فلن تحتاج أبدًا إلى استخدام "ACK_PAGER_COLOR".
متاح COLORS
ACK يستخدم الألوان المتاحة في وحدة Perl's Term :: ANSIColor ، والتي توفر تنسيق
القيم المدرجة التالية. لاحظ أن الحالة لا تهم عند استخدام هذه القيم.
المقدمة الألوان
أسود أحمر أخضر أصفر أزرق أرجواني سماوي أبيض
مشرق_أسود مشرق_أحمر ساطع_أخضر ساطع_أصفر
مشرق_أزرق ساطع_أرجواني ساطع_أزرق ساطع_أبيض
خلفيّة الألوان
on_black on_red on_green on_yellow
on_blue on_magenta on_cyan on_white
on_bright_black on_bright_red on_bright_green on_bright_yellow
on_bright_blue on_bright_magenta on_bright_cyan on_bright_white
ACK & أخرى آدوات
همة التكامل
ACK يتكامل بسهولة مع محرر نصوص Vim. ضع هذا في ملف .vimrc لاستخدام ACK بدلًا من ذلك
of البقرى:
تعيين grepprg = ack \ -k
يستخدم هذا المثال "-k" للبحث في الملفات فقط من الأنواع التي يعرفها ack ، ولكنك
قد تستخدم علامات افتراضية أخرى. الآن يمكنك البحث باستخدام ACK وخطوا بسهولة من خلال
النتائج في Vim:
: grep شاحنة قلابة perllib
كتب Miles Sterrett ملحق Vim لـ ACK الذي يسمح لك باستخدام ": Ack" بدلاً من
": grep" ، بالإضافة إلى العديد من الميزات المتقدمة الأخرى.
إيماكس التكامل
وضع Phil Jackson ملف ack.el الذي "يوفر طريقة تجميع بسيطة ...
لديه القدرة على تخمين الملفات التي تريد البحث عنها بناءً على الوضع الرئيسي ".
<http://www.shellarchive.co.uk/content/emacs.html>
تيكست مايت التكامل
Pedro Melo هو مستخدم TextMate يكتب "أقضي يومي في الغالب داخل TextMate و
تمتص ميزة البحث المضمّن في المشروع مع المشاريع الكبيرة. لذلك اخترقت أمر TextMate
كان يستخدم find + grep لاستخدام ack. والنتيجة هي البحث في المشروع مع ack وأنت
يمكن أن تجده هنا:
<http://www.simplicidade.org/notes/archives/2008/03/search_in_proje.html>"
قذيفة الإرجاع رمز
لمزيد من التوافق مع البقرى, ACK في الاستخدام العادي إرجاع قذيفة العودة أو كود الخروج
من 0 فقط إذا تم العثور على شيء و 1 إذا لم يتم العثور على تطابق.
(رمز خروج شل 1 هو "$؟ = 256" في perl مع "النظام" أو backticks.)
تشير البقرى لم يتم استخدام الكود 2 للأخطاء.
إذا تم تحديد "-f" أو "-g" ، فسيتم إرجاع 0 إذا تم العثور على ملف واحد على الأقل. إذا كان الجواب لا
تم العثور على الملفات ، ثم يتم إرجاع 1.
تفكيك ACK مشاكل
إذا أعطاك ack إخراجًا لا تتوقعه ، فابدأ ببعض الخطوات البسيطة.
استعمل - noenv
متغيرات البيئة الخاصة بك و .ackrc قد تفعل أشياء لا تتوقعها ، أو
نسيت ما حددته. يستخدم - noenv لتجاهل بيئتك و .ackrc.
استعمل -f إلى انظر تعريف ماذا ملفات لديك كان مختار
Ack's -f تمت إضافته في الأصل كأداة تصحيح. إذا كان ack لا يجد المطابقات لك
أعتقد أنه يجب أن تجد ، تشغيل ACK -f لمعرفة الملفات التي تم تحديدها. يمكنك أيضًا إضافة ملفات
خيارات "- إظهار-أنواع" لإظهار نوع كل ملف محدد.
استعمل --أحمق
يسرد هذا ملفات ackrc التي تم تحميلها والخيارات المحملة منها. وذلك ل
على سبيل المثال ، يمكنك العثور على قائمة بالأدلة التي لم يتم البحث عنها أو حيث توجد أنواع الملفات
يعرف.
TIPS
استعمل هيه .ackrc ملف.
تشير .ackrc هو المكان المناسب لوضع جميع الخيارات التي تستخدمها في معظم الأوقات ولكن لا تريد ذلك
يتذكر. ضع كل ما تبذلونه من تعريفات - نوع - إضافة و - نوع مجموعة. إذا تحب
- حالة ذكية ، ضعها هناك أيضًا. أنا أيضا مجموعة - ملفات الفرز هناك.
استعمل -f For عامل مع كبير مجموعات الأكواد
يقوم Ack بأكثر من البحث عن الملفات. "ack -f --perl" سينشئ قائمة بكل ملفات Perl
في الشجرة ، مثالي للإرسال com.xargs. على سبيل المثال:
# غيّر كل "هذا" إلى "ذاك" في جميع ملفات Perl في الشجرة.
ack -f --perl | xargs perl -p -i -e's / this / that / g '
أو إذا كنت تفضل:
perl -p -i -e's / this / that / g '$ (ack -f --perl)
استعمل -Q متى in الشك عن الصابون الحروف الأولية
إذا كنت تبحث عن شيء ما باستخدام حرف أولي للتعبير العادي ، فغالبًا ما يكون ملف
نقطة في اسم الملف أو عنوان IP ، أضف Q- لتجنب الإيجابيات الخاطئة بدون كل
شرطة مائلة للخلف. انظر المثال التالي للمزيد ...
استعمل ACK إلى راقب سجل ملفات
هذا واحد استخدمته في اليوم الآخر للعثور على بؤر مشاكل لزائر موقع الويب. كان المستخدم
مشكلة في التحميل مزعج. gif، لذلك أخذت سجل الوصول ومسحته ضوئيًا باستخدام ack مرتين.
ack -Q aa.bb.cc.dd /path/to/access.log | ack -Q -B5 trouble.gif
لا يجد ack الأول سوى الأسطر الموجودة في سجل Apache لعنوان IP المحدد. يجد الثاني
المطابقة على ملف GIF الخاص بي المزعج ، ويظهر الأسطر الخمسة السابقة من السجل في كل منها
القضية.
أمثلة of --انتاج
المتغيرات التالية مفيدة في سلسلة التوسيع:
& السلسلة الكاملة المطابقة بواسطة PATTERN.
1 دولار ، 2 دولار ، ...
محتويات المجموعة الأولى والثانية ... الموضوعة بين قوسين في PATTERN.
"$" "
السلسلة قبل المباراة.
"$"
السلسلة التي تلي المباراة.
لمزيد من التفاصيل والمتغيرات الأخرى انظر
<http://perldoc.perl.org/perlvar.html# المتغيرات المرتبطة بالتعبيرات العادية | بيرلفار>.
يوضح هذا المثال كيفية إضافة نص حول نمط معين (في هذه الحالة إضافة _
حول الكلمة التي تحتوي على "هـ")
ack2.pl "\ w * e \ w *" quick.txt - Output = "$` _ $ & _ $ '"
_الثعلب البني السريع يقفز فوق الكلب الكسول
الثعلب البني السريع يقفز فوق الكلب الكسول
الثعلب البني السريع يقفز فوق الكلب الكسول
يوضح هذا كيفية انتقاء أجزاء معينة من المباراة باستخدام () في المعتاد
التعبير.
ack '= head (\ d +) \ s + (. *)' - الإخراج = '$ 1: $ 2'
يحتوي ملف الإدخال على "= head1 NAME"
الإخراج "1: NAME"
مشاركة لك المعرفة
انضم إلى القائمة البريدية لمستخدمي ack. أرسل لي نصائحك ويمكنني إضافتها هنا.
الأسئلة الشائعة
لماذا ليس ACK العثور على a مباراة in (بعض ملف)؟
ربما لأنه من النوع الذي لا يتعرف عليه ack. سلوك البحث الخاص بـ ack هو
مدفوعًا بنوع الملف. If ACK لا علم ماذا نوع of ملف it هو، ACK يتجاهل هيه ملف.
استخدم مفتاح التبديل "-f" لرؤية قائمة بالملفات التي سيبحث عنها ack. يمكنك استخدام ال
تبديل "--show-types" لإظهار أي نوع يعتقد ack أن كل ملف هو.
لا it be عظيم if ACK فعل . & يستبدل؟
لا ، سيكون ack دائمًا للقراءة فقط. لدى Perl طريقة جيدة تمامًا لإجراء البحث والاستبدال
الملفات ، باستخدام مفاتيح التبديل "-i" و "-p" و "-n".
يمكنك بالتأكيد استخدام ack لتحديد ملفاتك لتحديثها. على سبيل المثال ، لتغيير كل شيء
"foo" إلى "bar" في جميع ملفات PHP ، يمكنك القيام بذلك من غلاف Unix:
$ perl -i -p -e's / foo / bar / g '$ (ack -f --php)
يستطيع I جعل ACK الاعتراف .xyz الملفات؟
نعم! يرجى الاطلاع على "تحديد الأنواع الخاصة بك". إذا كنت تعتقد أن ACK يجب أن يتعرف على نوع
بشكل افتراضي ، يرجى الاطلاع على "التحسينات".
هناك سابقا a البرنامج / الحزمة تسمى ack.
نعم أنا أعلم.
لماذا is it تسمى ACK if انها تسمى ack-grep؟
اسم البرنامج هو "ack". وقد أطلق عليها بعض شركات التغليف اسم "ack-grep" عند إنشائها
لأن هناك بالفعل حزمة تسمى "ack" ليس لها ما تفعله
مع هذا ack.
أقترح عليك عمل رابط رمزي اسمه ACK هذا يشير إلى ack-grep لأن أحد الأمور الحاسمة
من فوائد ack وجود اسم قصير جدًا وبسيط في الكتابة.
للقيام بذلك ، قم بتشغيل هذا باستخدام سودو أو كجذر:
ln -s / usr / bin / ack-grep / usr / bin / ack
بدلاً من ذلك ، يمكنك استخدام الاسم المستعار shell:
# باش / zsh
الاسم المستعار ack = ack-grep
#ش
الاسم المستعار ack ack-grep
ابحث عن هل ACK تعني؟
لا شئ. أردت اسمًا يسهل كتابته ويمكنك نطقه باعتباره اسمًا منفردًا
مقطع لفظي.
يستطيع I do متعدد الخطوط regexes؟
لا ، ack لا يدعم regexes التي تتطابق مع عدة أسطر. القيام بذلك يتطلب
القراءة في الملف بأكمله في وقت واحد.
إذا كنت تريد رؤية الخطوط القريبة من المطابقة ، فاستخدم مفاتيح التبديل "--A" و "--B" و "--C" لـ
عرض السياق.
لماذا is ACK يقول me I لديك an غير صالحة خيار متى البحث For "+ foo"؟
يعامل ack خيارات سطر الأوامر التي تبدأ بـ "+" أو "-" كخيارات ؛ إذا كنت ترغب في ذلك
ابحث عن هذه ، يمكنك أن تسبق مصطلح البحث بـ "-" أو استخدام خيار "--match".
(ومع ذلك ، لا تنس أن "+" هي حرف أولي للتعبير النمطي!)
لماذا هل "ack ". {40000،}" " فشل؟ ليس أن a صالح regex؟
تحدد لغة Perl مقياس التكرار إلى 32 كيلو بايت. يمكنك البحث عن ". {32767}"
ولكن ليس ". {32768}".
ACKRC الموقع دلالات
يمكن لـ Ack تحميل التكوين الخاص به من عدة مصادر. تحدد هذه القائمة مصادر Ack
يبحث عن التكوين. يتم تحميل كل ملف تم العثور عليه بالترتيب المحدد هنا ، و
كل واحد يتجاوز الخيارات المعينة في أي من المصادر التي تسبقه. (على سبيل المثال ، إذا قمت بتعيين
--sort-files in my user ackrc، and --nosort-files في سطر الأوامر ، سطر الأوامر
له الأسبقية)
يتم تحميل الافتراضات من App :: Ack :: ConfigDefaults. يمكن حذف هذا باستخدام
"- تجاهل الافتراضات".
· العالمية ackrc
ثم يتم تحميل الخيارات من ملف ackrc العالمي. يقع هذا في "/ etc / ackrc" في
أنظمة شبيهة بيونكس.
تحت Windows XP والإصدارات الأقدم ، يكون ackrc على "C: \ Documents and Settings \ All
المستخدمون \ بيانات التطبيق \ ackrc ".
ضمن Windows Vista / 7 ، يكون ackrc العالمي على "C: \ ProgramData"
يمنع الخيار "--noenv" تحميل كافة ملفات ackrc.
· المستخدم ackrc
ثم يتم تحميل الخيارات من ackrc الخاص بالمستخدم. هذا موجود في "$ HOME / .ackrc" في
أنظمة شبيهة بيونكس.
تحت Windows XP والإصدارات الأقدم ، يكون ackrc الخاص بالمستخدم على "C: \ Documents and
إعدادات \ $ USER \ Application Data \ ackrc ".
تحت Windows Vista / 7 ، يكون ackrc الخاص بالمستخدم في .
إذا كنت ترغب في تحميل ackrc مختلف على مستوى المستخدم ، فقد يتم تحديده باستخدام $ ACKRC
متغيرات البيئة.
يمنع الخيار "--noenv" تحميل كافة ملفات ackrc.
· مشروع ackrc
ثم يتم تحميل الخيارات من مشروع ackrc. مشروع ackrc هو أول ackrc
ملف باسم ".ackrc" أو "_ackrc" ، البحث أولاً في الدليل الحالي ،
ثم الدليل الأصل ، ثم دليل الأجداد ، إلخ. يمكن حذف هذا
باستخدام "--noenv".
· --ackrc
قد يتم تضمين الخيار "--ackrc" في سطر الأوامر لتحديد ملف ackrc
يمكن أن تتجاوز كل الآخرين. يتم التشاور معها حتى في حالة وجود "--noenv".
· ACK_OPTIONS
ثم يتم تحميل الخيارات من متغير البيئة "ACK_OPTIONS". هذا يمكن أن يكون
تم حذفه باستخدام "--noenv".
· سطر الأوامر
ثم يتم تحميل الخيارات من سطر الأوامر.
اختلافات بين ACK 1.X لأي لبس ACK 2.X
تم إجراء الكثير من التغييرات لـ ack 2 ؛ وهنا لائحة من لهم.
يمكنك تحويل أي لحظة سعيدة إلى ذكرى ثمينة وخالدة – احتفظ بها على شكل صورة أو مقطع فيديو باستخدام الكاميرا الخلفية المضمنة. ومن خلال اتصال Bluetooth، يمكنك مشاركة الملفات ذات المحتوى العزيز على قلبك مع أجهزة المقربين منك. التغيرات
عندما لا يتم تحديد محددات ، يبحث ack 1.x فقط من خلال الملفات التي يمكنه تعيينها
إلى نوع الملف. على النقيض من ذلك ، سيبحث ack 2.x في كل نظام عادي غير ثنائي
الملف الذي لم يتم تجاهله صراحةً عبر - تجاهل ملف or - اجنور دير. وهذا هو
على غرار سلوك -a / - الكل الخيار في ack 1.x.
تمت إضافة نظام تصفية أكثر مرونة ، بحيث يمكن أن تكون أنواع الملفات الأكثر قوة
تم إنشاؤها بواسطة المستخدم. لمزيد من التفاصيل ، يرجى الرجوع إلى "تحديد الأنواع الخاصة بك".
Ack الآن تحميل عدة ملفات ackrc. راجع "عوامل موقع ACKRC" للحصول على التفاصيل.
· تعريفات مرشح ack الافتراضية ليست خاصة؛ قد تخبر ack بالكامل
تجاهلهم إذا كنت لا تحبهم.
إزالة OPTIONS
· بسبب التغيير في سلوك البحث الافتراضي ، فإن ملف -a / - الكل -u / - غير مقيد
تمت إزالة الخيارات. بالإضافة إلى ذلك ، فإن -ك / - الأنواع المعروفة تمت إضافة الخيار إلى
تسبب في تصرف ack مع سلوك البحث الافتراضي لـ ack 1.x.
· ال -G تمت إزالة الخيار. كان اثنان من التعبيرات العادية في سطر الأوامر
تعتبر محيرة للغاية ؛ لمحاكاة -Gوظائف ، يمكنك استخدام الجديد -x
خيار توجيه أسماء الملفات من استدعاء واحد لـ ack إلى آخر.
· ال --الثنائية تمت إزالة الخيار.
· ال - تم تخطيه تمت إزالة الخيار.
· ال --نص تمت إزالة الخيار.
· ال - عكس ملف المباراة تمت إزالة الخيار. بدلا من ذلك ، يمكنك استخدام -v مع -g.
غيرت OPTIONS
· الخيارات التي تعمل على تعديل سلوك التعبير العادي (-i, -w, -Qو -v) ربما الآن
يمكن استخدامها مع -g.
المضافة OPTIONS
· - ملفات من تمت إضافة بحيث يمكن للمستخدم إرسال قائمة بأسماء الملفات كقائمة
ملفات للبحث.
· -x تمت إضافته لإخبار ack بقبول قائمة أسماء الملفات عبر الإدخال القياسي ؛ هذه القائمة
هي قائمة أسماء الملفات التي سيتم استخدامها للبحث.
· -s تمت إضافته لإخبار ack بإيقاف رسائل الخطأ حول غير موجود أو غير قابل للقراءة
الملفات.
· --إلغاء الدليل - noignore- الدليل تمت إضافتها كأسماء مستعارة لـ - اجنور دير
- noignore- دير على التوالي.
· - تجاهل ملف بحيث يمكن للمستخدمين تحديد أنماط من الملفات لتجاهلها (على سبيل المثال ،
/.* ~ $ /).
· --أحمق للسماح للمستخدمين بمعرفة الخيارات التي يتم تعيينها بسهولة في مكانها.
· --إنشاء- ackrc تمت إضافته حتى يتمكن المستخدمون من إنشاء ملفات ackrc مخصصة بناءً على ملف
يتم تحميل الإعدادات الافتراضية بواسطة ack ، وبالتالي يمكن للمستخدمين عرض هذه الإعدادات الافتراضية بسهولة.
· - نوع ديل تمت إضافته لإزالة تعريفات نوع الملف بشكل انتقائي.
· - تجاهل الافتراضات بحيث يمكن للمستخدمين تجاهل الخيارات الافتراضية لـ ack في
صالح من تلقاء أنفسهم.
· --حاجِز تمت إضافة لذلك يمكن لمستخدمي ack استشارة Admiral Ackbar.
استخدم ack-grepp عبر الإنترنت باستخدام خدمات onworks.net