англійськафранцузькаіспанська

Ad


Значок OnWorks

ack-grepp - Інтернет у хмарі

Запустіть ack-grepp у постачальника безкоштовного хостингу OnWorks через Ubuntu Online, Fedora Online, онлайн-емулятор Windows або онлайн-емулятор MAC OS

Це команда ack-grepp, яку можна запустити в постачальнику безкоштовного хостингу OnWorks за допомогою однієї з наших численних безкоштовних робочих станцій, таких як Ubuntu Online, Fedora Online, онлайн-емулятор Windows або онлайн-емулятор MAC OS.

ПРОГРАМА:

ІМ'Я


ack - шукач тексту, подібний до grep

СИНТАКСИС


ack [параметри] ШАБЛОН [ФАЙЛ...]
ack -f [параметри] [КАТАЛОГ...]

ОПИС


Ack розроблено як альтернатива GREP для програмістів.

Ack шукає названі вхідні ФАЙЛИ (або стандартний вхід, якщо файли не названі, або файл
ім'я - задано) для рядків, що містять відповідність заданому ШАБЛОНУ. За замовчуванням, ack
друкує відповідні рядки.

PATTERN — це регулярний вираз Perl. Регулярні вирази Perl зазвичай зустрічаються в
іншими мовами програмування, але за деталями їхньої поведінки звертайтеся
<http://perldoc.perl.org/perlreref.html|perlreref>. Якщо ви не знаєте, як використовувати звичайний
висловлювання, але зацікавлені в навчанні, ви можете проконсультуватися
<http://perldoc.perl.org/perlretut.html|perlretut>. Якщо вам не потрібен або ви хочете підтвердити використання
регулярні вирази, дивіться параметр "-Q"/"--literal".

Ack також може перерахувати файли, які будуть шукані, без фактичного пошуку
ви використовуєте можливості фільтрації файлів ack.

Фото ВИБІР


Якщо файли не вказані для пошуку, у командному рядку або передаються за допомогою
параметр "-x", ACK заглиблюється в підкаталоги, вибираючи файли для пошуку.

ACK розумний щодо файлів, які він шукає. Він знає про певні типи файлів на основі
як на розширення файлу, так і, в деяких випадках, на вміст файлу. Ці
вибір можна зробити за допомогою --тип варіант.

Без вибору файлу, ACK здійснює пошук у звичайних файлах, які не є явно
виключено --ignore-dir та --ignore-file варіанти, які присутні в ackrc файлів або на
командний рядок.

Параметри за замовчуванням для ACK ігнорувати певні файли та каталоги. До них належать:

· Резервні файли: відповідність файлів #*# або закінчуючи на ~.

· Coredumps: відповідність файлів ядро.\d+

· Каталоги контролю версій, як .svn та .git.

прогін ACK за допомогою параметра "--dump", щоб побачити, які налаштування встановлено.

Тим не менш, ACK завжди шукає файли, вказані в командному рядку, незалежно від типу. Якщо
ти скажи ACK для пошуку в coredump, він шукатиме в coredump.

ДОВІДНИК ВИБІР


ACK спускається через дерево каталогів вказаних початкових каталогів. Якщо ні
каталоги вказані, використовується поточний робочий каталог. Однак це буде ігнорувати
тіньові каталоги, які використовуються багатьма системами контролю версій, і каталоги збірки
використовується системою Perl MakeMaker. Ви можете додати або видалити каталог із цього списку за допомогою
--[no]ignore-dir варіант. Опцію можна повторити, щоб додати/видалити декілька каталогів
зі списку ігнорів.

Щоб отримати повний список каталогів, які не шукаються, запустіть «ack --dump».

КОЛИ TO ВИКОРИСТАННЯ GREP


ACK козирі GREP як повсякденний інструмент 99% часу, але не викидайте GREP геть, тому що
іноді це все ще знадобиться.

Наприклад, пошук у величезних файлах у пошуках регулярних виразів, які можна виразити GREP
синтаксис має бути швидшим GREP.

Якщо ваш сценарій або батьківська програма використовує GREP «--тихий» або «--тихий» або потребує виходу 2 на вводу-вводі
помилка, використання GREP.

ВАРІАНТИ


--ackrc
Визначає файл ackrc для завантаження після всіх інших; див. «СЕМАНТИКА РОЗМІЩЕННЯ ACKRC».

-A NUM, --after-context=NUM
друк NUM рядки кінцевого контексту після відповідних рядків.

-B NUM, --before-context=NUM
друк NUM рядки провідного контексту перед відповідними рядками.

--[без перерви
Надрукуйте перерву між результатами з різних файлів. Увімкнено за замовчуванням під час використання
інтерактивно.

-C [NUM], --контекст[=NUM]
друк NUM рядків (за замовчуванням 2) контексту навколо відповідних рядків.

-c, --рахувати
Придушити нормальний вихід; замість цього надрукувати кількість відповідних рядків для кожного вхідного файлу.
If -l дійсний, він показуватиме лише кількість рядків для кожного файлу, у якому є рядки
відповідність. Без -l, кількість рядків може бути нульовою.

Якщо поєднується з -h (--без імені файлу) ack виводить лише одне загальне число.

--[ні]колір, --[ні]колір
-колір виділяє відповідний текст. --без кольору пригнічує колір. Це на
за замовчуванням, якщо вихід не буде перенаправлено.

У Windows цей параметр вимкнено за замовчуванням, якщо не вимкнено модуль Win32::Console::ANSI
встановлено або використовується змінна середовища "ACK_PAGER_COLOR".

--color-filename=color
Встановлює колір, який буде використовуватися для імен файлів.

--color-match=color
Встановлює колір, який буде використовуватися для сірників.

--color-lineno=color
Встановлює колір, який буде використовуватися для номерів рядків.

--[ні]стовпчик
Покажіть номер стовпця першого збігу. Це корисно для редакторів, які можуть розмістити
ваш курсор у заданій позиції.

--create-ackrc
Виводить параметри підтвердження за замовчуванням до стандартного виводу. Це корисно, коли ви хочете
налаштувати параметри за замовчуванням.

--звалища
Записує список завантажених параметрів і звідки вони прийшли до стандартного виведення. Зручно
для налагодження.

--[ні]окр
--noenv вимикає всю обробку середовища. Немає .ackrc читається і все середовище
змінні ігноруються. За замовчуванням, ACK вважає .ackrc та налаштування в
довкілля.

--змивати
--змивати миттєво промиває вихід. Це вимкнено за замовчуванням, якщо не запущено ack
інтерактивно (коли вихід переходить до каналу або файлу).

-f Друкуйте лише ті файли, які будуть шукані, фактично не роблячи жодного пошуку.
ШАБЛОН не потрібно вказувати, інакше він буде прийнятий як шлях для пошуку.

--files-from=Фото
Список файлів для пошуку вказано в Фото. Список файлів є
розділені новими рядками. Якщо Фото є "-", список завантажується зі стандартного введення.

--[без фільтра
Примусове ack діяти так, ніби він отримує вхід через трубу.

--[ні]слідувати
Дотримуйтесь або не переходьте за символічними посиланнями, окрім будь-яких початкових файлів або каталогів
були вказані в командному рядку.

Це вимкнено за замовчуванням.

-g ПАТЕРН
Друк файлів, у яких відносний шлях + ім’я файлу збігаються ПАТЕРН. Цей варіант може бути
в поєднанні з -колір щоб було легше визначити збіг.

--[ні]група
--група групи збігаються за назвою файлу. Це значення за замовчуванням при інтерактивному використанні.

--ногрупа друкує один результат на рядок, як grep. Це значення за замовчуванням, якщо вихід є
перенаправлено.

-H, --з-ім'ям файлу
Надрукуйте назву файлу для кожного збігу. Це значення за замовчуванням, якщо пошук не виконується
явно вказаний файл.

-h, --без імені файлу
Придушити префікс імен файлів на виводі під час пошуку кількох файлів.

--[без]заголовка
Надрукуйте заголовок імені файлу над результатами кожного файлу. Це значення за замовчуванням під час використання
інтерактивно.

--допомога, -?
Роздрукуйте коротку довідкову заяву.

-- типи допомоги, --допомога=типи
Надрукуйте всі відомі типи.

-i, --ігнорувати регістр
Ігноруйте розрізнення регістру в PATTERN

--ignore-ack-defaults
Вказує ack повністю ігнорувати визначення за замовчуванням, надані ack. Це
корисно в поєднанні з --create-ackrc якщо Ви насправді хочу налаштувати ack.

--[no]ignore-dir=DIRNAME, --[no]ignore-directory=DIRNAME
Ігнорувати каталог (оскільки CVS, .svn тощо ігноруються). Можна використовувати кілька разів, щоб ігнорувати
кілька каталогів. Наприклад, користувачі масонів можуть захотіти включити --ignore-dir=дані.
Команда --noignore-dir Опція дозволяє користувачам шукати каталоги, які зазвичай є
ігнорується (можливо, для дослідження вмісту .svn/props довідники).

Команда DIRNAME завжди має бути простим ім'ям каталогу. Вкладені каталоги, як foo/бар
НЕ підтримуються. Вам потрібно було б уточнити --ignore-dir=foo а потім немає файлів з
будь-який каталог foo враховується за допомогою ack, якщо не вказано явно в команді
лінія.

--ignore-file=FILTERTYPE:FILTERARGS
Ігнорувати збіг файлів FILTERTYPE:FILTERARGS. Фільтри вказані ідентично
фільтри типів файлів, як показано в розділі "Визначення власних типів".

-k, --відомі типи
Обмежте вибрані файли файлами з типами, про які знає ack. Це еквівалентно
поведінка за замовчуванням, знайдена в ack 1.

--lines=NUM
Тільки рядок друку NUM кожного файлу. Кілька рядків можна подавати з кількома --лінії
параметри або у вигляді списку, розділеного комами (--рядки=3,5,7). --рядки=4-7 також працює. The
рядки завжди виводяться в порядку зростання, незалежно від порядку, зазначеного в команді
лінія.

-l, --файли-зі збігами
Друкуйте лише назви файлів, що відповідають, замість відповідного тексту.

-L, --файли-без-відповідників
Друкуйте лише назви файлів, які це роблять НЕ збігатися.

-- матч ПАТЕРН
вкажіть ПАТЕРН явно. Це корисно, якщо ви не хочете використовувати регулярний вираз як
ваш перший аргумент, наприклад, при виконанні кількох пошуків над одним набором файлів.

# пошук foo і bar у вказаних файлах
ack file1 t/file* --відповідати foo
ack file1 t/file* --рядок відповідності

-m=NUM, --max-count=NUM
Припиніть читання файлу після NUM сірники.

-- чоловік
Роздрукуйте цю сторінку посібника.

-n, --без рекурсу
Немає спуску в підкаталоги.

-o Показувати лише частину кожного рядка, що відповідає ШАБЛОНУ (вимикає виділення тексту)

--вихід=експр
Вивести оцінку експр для кожного рядка (вимикає виділення тексту) Якщо ШАБОР
збігається більше одного разу, то для кожного збігу, що не перекривається, виводиться рядок. Для більш
інформацію дивіться в розділі «Приклади - вихід".

--пейджер=програма, --нопейджер
--пейджер спрямовує вихід ack через програма. Це також можна вказати за допомогою
Змінні середовища "ACK_PAGER" і "ACK_PAGER_COLOR".

Використання --pager не пригнічує групування та забарвлення, як конвеєрний вихід на
командний рядок робить.

--нопейджер скасовує будь-які налаштування ~/.ackrc, "ACK_PAGER" або "ACK_PAGER_COLOR". Немає
вихід буде надіслано через пейджер.

--passthru
Друкує всі рядки, незалежно від того, чи відповідають вони виразу. Підсвічування все одно буде
однак працює, тому його можна використовувати для виділення збігів, але при цьому переглядаючи весь вміст
файл, як у:

# Перегляньте файл журналу та виділіть певну IP-адресу
$ хвіст -f ~/access.log | ack --passthru 123.45.67.89

--друк0
Працює лише в поєднанні з -f, -g, -l або -c (виведення імені файлу). Назви файлів такі
вихід розділений нульовим байтом замість звичайного нового рядка. Це корисно, коли
робота з іменами файлів, які містять пробіли, напр

# видалити всі файли типу html
ack -f --html --print0 | xargs -0 rm -f

-Q, --букв
Процитуйте всі метасимволи в PATTERN, він розглядається як литерал.

-r, -R, --рекурс
Перейти до підкаталогів. Це значення за замовчуванням і лише для сумісності з
grep. Ви також можете використовувати його для повороту --без рекурсу вимкнути

-s Придушення повідомлень про помилки щодо неіснуючих або нечитабельних файлів. Це взято з
fgrep.

--[ні]розумний футляр, --не розумний футляр
Ігноруйте регістр у рядках пошуку, якщо ШАБОР не містить символів верхнього регістру. Це
схожий на "smartcase" у vim. Цей параметр вимкнено за замовчуванням і ігнорується, якщо "-i" є
вказано.

-i завжди перекриває цю опцію.

-- сортування файлів
Сортує знайдені файли лексикографічно. Використовуйте це, якщо ви хочете, щоб ваші списки файлів
бути детермінованим між запусками ACK.

--шоу-типи
Виводить типи файлів, які ack асоціюються з кожним файлом.

Працює з -f та -g Варіанти.

--type=[ні]ТИП
Укажіть типи файлів, які потрібно включити або виключити з пошуку. TYPE – це тип файлу,
як Perl or XML. --type=perl також можна вказати як --perl та --type=noperl може
робити як --noperl.

Якщо файл має обидва типи "foo" і "bar", вказівка ​​--foo та --nobar виключає
файлу, оскільки виключення має пріоритет перед включенням.

Специфікації типу можуть повторюватися і об'єднуються разом.

Читати ACK --допомога=типи для списку дійсних типів.

--тип-додати TYPE:ФІЛЬТР:FILTERARGS
Файли з заданими FILTERARGS, застосованими до даного FILTER, розпізнаються як такі
(існуючий) тип TYPE. Дивіться також «Визначення власних типів».

--набірний набір TYPE:ФІЛЬТР:FILTERARGS
Файли з заданими FILTERARGS, застосованими до даного FILTER, розпізнаються як такі
тип TYPE. Це замінює існуюче визначення для типу TYPE. Дивіться також «Визначення
ваші власні типи».

--type-del TYPE
Фільтри, пов’язані з TYPE, видаляються з Ack і більше не розглядаються
для пошуків.

-v, --invert-match
Інвертувати відповідність: виберіть рядки, що не збігаються

-- версія
Відобразити версію та інформацію про авторські права.

-w, --word-регулярний вираз
Змусити ВАЗОРОН відповідати лише цілим словам. Шаблон обгорнутий "\b"
метасимволи.

-x Абревіатура для --files-from=-; список файлів для пошуку читається зі стандартного
введення, з одним рядком на файл.

-1 Зупиняється після повідомлення про перший будь-який збіг. Це відрізняється від --max-count=1
or -м1, де показано лише одне збіг на файл. також, -1 працює з -f та -g, Де
-m не.

--thpppt
Покажіть важливий логотип Білла Кота. Зверніть увагу, що точне написання
--thpppppt не важливо. Він перевіряється на регулярний вираз.

-- бар
Перевірте у адмірала, чи немає пасток.

-- Кеті
Шоколад, Шоколад, Шоколад!

THE .ackrc Фото


Команда .ackrc файл містить параметри командного рядка, які додаються до командного рядка
перед обробкою. Кілька параметрів можуть існувати на кількох рядках. Рядки, які починаються на #
ігноруються. А .ackrc може виглядати так:

# Завжди сортуйте файли
-- сортування файлів

# Завжди кольоровий, навіть якщо перейти до іншої програми
-колір

# Використовуйте "less -r" як мій пейджер
--пейджер=менше -r

Зауважте, що аргументи з пробілами не потрібно брати в лапки, оскільки це не так
інтерпретується оболонкою. В принципі, кожен лінія в .ackrc файл інтерпретується як один
елемент @ARGV.

ACK шукає в кількох місцях .ackrc файли; процес пошуку детально описано в
«СЕМАНТИКА РОЗМІЩЕННЯ ACKRC». Ці файли не розглядаються, якщо --noenv вказано на
command line.

Визначення ваш власний Типи


ack дозволяє визначати власні типи на додаток до попередньо визначених типів. Це зроблено
з параметрами командного рядка, які найкраще помістити в файл .ackrc файл - тоді не потрібно
визначайте свої типи знову і знову. У наступних прикладах параметри завжди будуть
відображатися в одному командному рядку, щоб їх можна було легко скопіювати та вставити.

ACK --perl Foo шукає foo у всіх файлах perl. ACK --допомога=типи говорить вам, що perl
файли – це файли, що закінчуються на .pl, .pm, .pod або .t. Що робити, якщо ви хочете включити .xs
файлів також під час пошуку файлів --perl? ACK --тип-додати perl:ext:xs --perl Foo робить
це для вас. --тип-додати додає додаткові розширення до існуючого типу.

Якщо ви хочете визначити новий тип або повністю перевизначити існуючий тип, використовуйте
--набірний набір. ACK --набірний набір eiffel:ext:e,eiffel визначає тип eiffel щоб включити файли
з розширеннями .e або .eiffel. Отже, щоб шукати всі файли eiffel, що містять це слово
Використання Бертрана ACK --набірний набір eiffel:ext:e,eiffel -- Ейфель Бертран. Як зазвичай, ви також можете
запис --type=eiffel замість -- Ейфель. Заперечення також працює, отже --Нойфель виключає все
eiffel файли з пошуку. Перевизначення також працює: ACK --набірний набір cc:ext:c,h та .xs файли
більше не належать до типу cc.

При визначенні власних типів у .ackrc файл ви повинні використовувати наступне:

--type-set=eiffel:ext:e,eiffel

або запис на окремих рядках

--набірний набір
eiffel:ext:e,eiffel

Наступне робить НЕ робота в .ackrc Файл:

--набір типу eiffel:ext:e,eiffel

Щоб побачити всі визначені на даний момент типи, використовуйте -- типи допомоги, напр ACK --набірний набір
резервна копія:ext:bak --тип-додати perl:ext:perl -- типи допомоги

На додаток до фільтрації на основі розширення (наприклад, ack 1.x дозволено), ack 2 пропонує
додаткові типи фільтрів. Загальний синтаксис --набірний набір TYPE:FILTER:FILTERARGS;
FILTERARGS залежить від значення ФІЛЬТР.

це:ФІЛЕНАМ
is фільтри точно відповідають назві цільового файлу. Потрібен рівно один аргумент, а саме
ім'я файлу, що відповідає.

приклад:

--type-set make:is:Makefile

доб:ПОШИРЕННЯ[,РОЗШИРЕННЯ2[,...]]
ext фільтри відповідають розширенням цільового файлу зі списком розширень. Немає
провідна точка потрібна для розширень.

приклад:

--type-set perl:ext:pl,pm,t

гра:ПАТЕРН
матч фільтри узгоджують цільове ім’я файлу з регулярним виразом. Регулярний
вираз робиться нечутливим до регістру для пошуку.

приклад:

--type-set make:match:/(gnu)?makefile/

перший матч:ПАТЕРН
перший матч збігає перший рядок цільового файлу з регулярним виразом.
Люблю матч, регулярний вираз не чутливий до регістру.

приклад:

--type-add perl:firstlinematch:/perl/

У майбутньому можуть бути доступні інші типи фільтрів.

НАВКОЛИШНЄ СЕРЕДОВИЩЕ ЗМІННІ


Для часто використовуваних параметрів підтвердження змінні середовища можуть значно полегшити життя. Ці
змінні ігноруються, якщо --noenv вказується в командному рядку.

ACKRC
Вказує місцезнаходження користувача .ackrc файл. Якщо цей файл не існує, ACK
виглядає у розташуванні за замовчуванням.

ACK_OPTIONS
Ця змінна визначає параметри за замовчуванням, які розміщуються перед будь-якими явними параметрами
у командному рядку.

ACK_COLOR_FILENAME
Визначає колір імені файлу, коли воно друкується --група режим. За замовчуванням,
це "жирний зелений".

Розпізнаними атрибутами є чіткі, скинуті, темні, напівжирні, підкреслення, підкреслення, блимання,
реверс, прихований чорний, червоний, зелений, жовтий, синій, пурпурний, на_чорний, на_червоний,
на_зелений, на_жовтий, на_блакитний, на_пурпурний, на_блакитний та на_білий. Справа ні
значний. Підкреслення і підкреслення еквівалентні, а також очищення та скидання. The
color only встановлює колір переднього плану, а on_color встановлює колір фону.

Цей параметр також можна встановити за допомогою -- колір-ім'я файлу.

ACK_COLOR_MATCH
Визначає колір відповідного тексту під час друку -колір режим. За замовчуванням,
це "чорний на_жовтий".

Цей параметр також можна встановити за допомогою -- відповідність кольору.

Читати ACK_COLOR_FILENAME для характеристик кольору.

ACK_COLOR_LINENO
Визначає колір номера рядка під час друку -колір режим. За замовчуванням це
«жирний жовтий».

Цей параметр також можна встановити за допомогою --кольор-лінійний.

Читати ACK_COLOR_FILENAME для характеристик кольору.

ACK_PAGER
Вказує програму пейджера, як-от "більше", "менше" або "більшість", до якої буде надіслано підтвердження
його вихід.

Використання "ACK_PAGER" не пригнічує групування та забарвлення, як конвеєрний вихід на
командний рядок робить, за винятком того, що в Windows ack буде вважати, що "ACK_PAGER" ні
підтримувати колір.

"ACK_PAGER_COLOR" замінює "ACK_PAGER", якщо вказано обидва.

ACK_PAGER_COLOR
Вказує програму пейджера, яка розуміє послідовності кольорів ANSI. Використання
"ACK_PAGER_COLOR" не пригнічує групування та забарвлення, як конвеєрний вихід на
командний рядок робить.

Якщо ви не використовуєте Windows, вам ніколи не потрібно використовувати "ACK_PAGER_COLOR".

В НАЯВНОСТІ КВІТИ


ACK використовує кольори, доступні в модулі Perl Term::ANSIColor, який забезпечує
наступні перераховані значення. Зауважте, що при використанні цих значень регістр не має значення.

Foreground квітів
чорний червоний зелений жовтий синій пурпурно-блакитний білий

яскраво_чорний яскраво_червоний яскраво_зелений яскраво_жовтий
яскраво-блакитний яскраво-пурпурний яскраво-блакитний яскраво-білий

фон квітів
на_чорний на_червоний на_зелений на_жовтий
on_blue on_magenta on_cyan on_white

на_яскраво-чорний на_яскраво-червоний на_яскраво-зелений на_яскраво-жовтий
on_bright_blue on_bright_magenta on_bright_cyan on_bright_white

ACK & ІНШІ ЗАСОБИ


Vim інтеграція
ACK легко інтегрується з текстовим редактором Vim. Встановіть це у своєму .vimrc to use ACK замість
of GREP:

встановити grepprg=ack\ -k

У цьому прикладі використовується "-k" для пошуку лише файлів тих типів, про які знає ack, але ви
може використовувати інші прапори за замовчуванням. Тепер ви можете шукати за допомогою ACK і легко переступати через
результати у Vim:

:grep Дампер perllib

Майлз Стерретт написав плагін для Vim ACK що дозволяє використовувати ":Ack" замість
":grep", а також кілька інших розширених функцій.



Emacs інтеграція
Філ Джексон зібрав підтвердження ел розширення, яке "забезпечує простий режим компіляції ...
має можливість вгадати, які файли ви хочете шукати на основі основного режиму».

<http://www.shellarchive.co.uk/content/emacs.html>

TextMate інтеграція
Педро Мело є користувачем TextMate, який пише: «Я проводжу свій день переважно всередині TextMate, а
вбудований find-in-project відстойний з великими проектами. Тому я зламав команду TextMate
використовував find + grep для використання ack. Результатом є пошук у Project за допомогою ack і ви
можна знайти тут:
<http://www.simplicidade.org/notes/archives/2008/03/search_in_proje.html>"

Склад та Повернення код
Для кращої сумісності з GREP, ACK при нормальному використанні повертає код повернення або виходу оболонки
0, лише якщо щось знайдено, і 1, якщо збігу не знайдено.

(Код виходу з оболонки 1 — «$?=256» у perl із «системою» або зворотними галочками.)

Команда GREP код 2 для помилок не використовується.

Якщо вказано «-f» або «-g», то повертається 0, якщо знайдено хоча б один файл. Якщо ні
файли знайдено, потім повертається 1.

ВІДМОВЛЕННЯ ACK ПРОБЛЕМИ


Якщо ack дає результат, якого ви не очікували, почніть з кількох простих кроків.

Скористайтесь --noenv
Ваші змінні середовища та .ackrc може робити те, чого ви не очікуєте, або
забув, що ви вказали. Використовуйте --noenv ігнорувати своє оточення і .ackrc.

Скористайтесь -f до побачити що файли мати було обраний
Ack's -f спочатку був доданий як інструмент налагодження. Якщо ack не знаходить відповідає вам
думаю, що треба знайти, бігти ACK -f щоб побачити, які файли вибрано. Ви також можете додати
параметри "--show-types", щоб показати тип кожного вибраного файлу.

Скористайтесь --звалища
Тут перелічено файли ackrc, які завантажуються, і параметри, завантажені з них. Тож для
Наприклад, ви можете знайти список каталогів, які не шукають або де знаходяться типи файлів
визначений.

TIPS


Скористайтесь .ackrc файлу.
Команда .ackrc це місце, де можна розмістити всі свої параметри, які ви використовуєте більшість часу, але не хочете
пам'ятати. Помістіть у нього всі ваші визначення --type-add та --type-set. Якщо ти хочеш
--smart-case, також встановіть його там. Я також встановив там --sort-files.

Скористайтесь -f та цінності робочий з великий десятки
Ack робить більше, ніж пошук файлів. "ack -f --perl" створить список усіх файлів Perl
на дереві, ідеально підходить для відправки ксарг, Наприклад:

# Змініть все "це" на "те" у всіх файлах 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 сумніваюся про метахарактеристики
Якщо ви шукаєте щось із метасимволом регулярного виразу, найчастіше a
крапку в назві файлу або IP-адресі, додайте -Q, щоб уникнути помилкових спрацьовувань без усіх параметрів
зворотний скіс. Докладніше дивіться в наступному прикладі...

Скористайтесь ACK до дивитися журнал файли
Ось один, який я використав днями, щоб знайти проблемні місця для відвідувача веб-сайту. Користувач мав
проблема із завантаженням проблематично.gif, тому я взяв журнал доступу та двічі сканував його за допомогою ack.

ack -Q aa.bb.cc.dd /path/to/access.log | ack -Q -B5 troublesome.gif

Перше підтвердження знаходить лише рядки в журналі Apache для даного IP. Другі знахідки
відповідність на моєму клопітному GIF і показує попередні п’ять рядків журналу в кожному
справа

прикладів of - вихід
Наступні змінні корисні в рядку розширення:

$& Весь рядок, який відповідає PATTERN.

$1, $2, ...
Вміст 1-ї, 2-ї ... групи в дужках у ВАЗОРУ.

"$`"
Струна перед матчем.

"$"
Нитка після матчу.

Додаткову інформацію та інші змінні див
<http://perldoc.perl.org/perlvar.html#Variables-related-to-regular-expressions|perlvar>.

У цьому прикладі показано, як додати текст навколо певного шаблону (у цьому випадку додавання _
навколо слова з "е")

ack2.pl "\w*e\w*" quick.txt --output="$`_$&_$'"
_Швидка бура лисиця стрибає через ледачого собаку
Швидка бура лисиця стрибає _через_ ледачого пса
Швидка бура лисиця перестрибує через ледачого собаку

Це показує, як виділити окремі частини збігу за допомогою ( ) у звичайному
вираз.

ack '=голова(\d+)\s+(.*)' --output=' $1 : $2'
вхідний файл містить "=head1 NAME"
вивести "1 : NAME"

Поділитись ваш знання
Приєднуйтесь до списку розсилки ack-users. Надсилайте мені свої поради, і я можу додати їх сюди.

FAQ


Чому не є ACK виявлення a матч in (дещо файл)?
Можливо, тому, що це такий тип, який ack не розпізнає. пошукова поведінка ack є
керується типом файлу. If ACK НЕ Знати що вид of файл it є ACK ігнорує файлу.

Використовуйте перемикач "-f", щоб побачити список файлів, які шукатиме вас. Ви можете використовувати
Перемикач "--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 програма/пакет званий підтвердити
Так, я знаю.

Чому is it званий ACK if це званий ack-grep?
Ім'я програми - "ack". Деякі пакувальники називали це "ack-grep" під час створення
пакунки, тому що вже існує пакет під назвою "ack", який не має нічого спільного
з цим акком.

Я пропоную вам створити символічне посилання з ім'ям ACK що вказує на ack-grep тому що одна з найважливіших
Перевага ack полягає в тому, що ім'я таке коротке та просте для введення.

Для цього запустіть це за допомогою Суду або як root:

ln -s /usr/bin/ack-grep /usr/bin/ack

Крім того, ви можете використовувати псевдонім оболонки:

# bash/zsh
псевдонім ack=ack-grep

# csh
псевдонім ack ack-grep

Що робить ACK значить?
Нічого. Я хотів, щоб ім’я було легко ввести та вимовити як єдине
склад.

Може I do багаторядкова регулярні вирази?
Ні, ack не підтримує регулярні вирази, які відповідають кільком рядкам. Для цього знадобиться
читання всього файлу за раз.

Якщо ви хочете бачити рядки біля свого збігу, використовуйте перемикачі "--A", "--B" і "--C" для
відображення контексту.

Чому is ACK говорять me I мати an недійсний варіант коли Грати короля карти - безкоштовно Nijumi логічна гра гри та цінності "+foo"?
ack розглядає параметри командного рядка, які починаються з «+» або «-» як параметри; якщо ти хочеш
шукайте їх, ви можете поставити перед пошуковим терміном «--» або скористатися опцією «--match».
(Однак не забувайте, що «+» є метасимволом регулярного виразу!)

Чому робить "ак '.{40000,}'" невдало? Чи ні Що a дійсний регулярне вираження?
Мова Perl обмежує коефіцієнт повторення до 32 КБ. Ви можете шукати ".{32767}"
але не ".{32768}".

ACKRC МІСЦЕ СЕМАНТИКА


Ack може завантажувати свою конфігурацію з багатьох джерел. Цей список визначає джерела Ack
шукає конфігурацію; кожен знайдений завантажується в порядку, зазначеному тут, і
кожен з них замінює параметри, встановлені в будь-якому з попередніх джерел. (Наприклад, якщо я встановлю
--sort-files у моєму користувачеві ackrc та --nosort-files у командному рядку, командному рядку
має пріоритет)

· Значення за замовчуванням завантажуються з App::Ack::ConfigDefaults. Це можна пропустити за допомогою
"--ignore-ack-defaults".

· Глобальне підтвердження

Потім параметри завантажуються з глобального ackrc. Це знаходиться за адресою "/etc/ackrc".
Unix-подібні системи.

У Windows XP і попередніх версіях ackrc знаходиться в "C:\Documents and Settings\All
Користувачі\Дані програми\ackrc".

У Windows Vista/7 глобальний ackrc знаходиться в "C:\ProgramData"

Параметр «--noenv» запобігає завантаженню всіх файлів ackrc.

· Користувач ackrc

Потім параметри завантажуються з ackrc користувача. Це розташовано за адресою "$HOME/.ackrc".
Unix-подібні системи.

У Windows XP і старіших версіях ackrc користувача знаходиться в "C:\Documents і
Settings\$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; ось їх список.

Загальні відомості ЗМІНИ
· Якщо селектори не вказані, ack 1.x шукає лише файли, які може зіставити
до типу файлу. ack 2.x, навпаки, шукатиме всі звичайні, не двійкові
файл, який не ігнорується явно через --ignore-file or --ignore-dir, Це
схожа на поведінку -а/--все опція в ack 1.x.

· Додано більш гнучку систему фільтрів, завдяки чому можуть бути більш потужні типи файлів
створений користувачем. Додаткову інформацію див. у розділі «Визначення власних типів».

· ack тепер завантажує декілька файлів ackrc; див. «СЕМАНТИКА РОЗМІЩЕННЯ ACKRC» для детальної інформації.

· визначення фільтрів ack за замовчуванням не є особливими; Ви можете сказати, що повністю
нехтуйте ними, якщо вони вам не подобаються.

ВИДАЛЕНО ВАРІАНТИ
· Через зміну поведінки пошуку за замовчуванням, -а/--все та -u/--необмежений
параметри вилучено. Крім того, -k/--відомі-типи була додана опція
спричинити поведінку ack за умовчанням для пошуку ack 1.x.

· -G опцію вилучено. Два регулярних вирази в командному рядку були
вважаються занадто заплутаними; імітувати -Gфункціонал, ви можете використовувати новий -x
можливість передавати імена файлів від одного виклику ack до іншого.

· -- двійковий опцію вилучено.

· --пропущено опцію вилучено.

· --текст опцію вилучено.

· --invert-file-match опцію вилучено. Замість цього ви можете використовувати -v з -g.

ЗМІНЕНО ВАРІАНТИ
· Параметри, які змінюють поведінку регулярного виразу (-i, -w, -Q та -v) може зараз
використовувати з -g.

ДОБАВЛЕНО ВАРІАНТИ
· --файли-від було додано, щоб користувач міг подати список імен файлів як список
файли для пошуку.

· -x було додано, щоб вказати ack прийняти список імен файлів за допомогою стандартного введення; цей список
це список імен файлів, які будуть використовуватися для пошуку.

· -s було додано, щоб розповісти ack для придушення повідомлень про помилки про неіснуючі або нечитані
файли.

· --ignore-каталог та --noignore-каталог були додані як псевдоніми для --ignore-dir та
--noignore-dir відповідно.

· --ignore-file було додано, щоб користувачі могли вказати шаблони файлів, які потрібно ігнорувати (наприклад.
/.*~$/).

· --звалища було додано, щоб користувачі могли легко з’ясувати, які параметри де встановлено.

· --create-ackrc було додано, щоб користувачі могли створювати власні файли ackrc на основі
налаштування за замовчуванням, завантажені ACK, і щоб користувачі могли легко переглядати ці параметри за замовчуванням.

· --type-del було додано для вибіркового видалення визначень типів файлів.

· --ignore-ack-defaults було додано, щоб користувачі могли ігнорувати параметри ack за замовчуванням
власну користь.

· -- бар було додано, щоб користувачі ack могли звернутися до Admiral Ackbar.

Використовуйте ack-grepp онлайн за допомогою служб onworks.net


Безкоштовні сервери та робочі станції

Завантажте програми для Windows і Linux

  • 1
    глибоко чистий
    глибоко чистий
    Сценарій Kotlin, який руйнує всю збірку
    кеші з проектів Gradle/Android.
    Корисно, коли Gradle або IDE дозволяють
    вниз. Сценарій протестовано на
    macOS, але...
    Завантажити deep-clean
  • 2
    Плагін Eclipse Checkstyle
    Плагін Eclipse Checkstyle
    Плагін Eclipse Checkstyle
    інтегрує код Java Checkstyle
    аудитора в IDE Eclipse. The
    плагін забезпечує зворотний зв’язок у режимі реального часу
    користувач про насильство...
    Завантажте плагін Eclipse Checkstyle
  • 3
    AstrOrzPlayer
    AstrOrzPlayer
    AstrOrz Player — безкоштовний медіаплеєр
    програмне забезпечення, частина на основі WMP і VLC. The
    плеєр в мінімалістичному стилі, с
    більше десяти кольорів теми, а також можна
    б ...
    Завантажити AstrOrzPlayer
  • 4
    movistartv
    movistartv
    Kodi Movistar+ TV є ДОДАТКОМ для XBMC/
    Kodi que permite disponer de un
    decodificador de los servicios IPTV de
    Movistar інтегрований в один із одним
    медіацентри ма...
    Завантажити movistartv
  • 5
    Код :: Блоки
    Код :: Блоки
    Code::Blocks — безкоштовна програма з відкритим кодом,
    кросплатформенний C, C++ і Fortran IDE
    створений для задоволення найвимогливіших потреб
    своїх користувачів. Він розроблений, щоб бути дуже
    подовжує ...
    Завантажити Code::Blocks
  • 6
    Серед
    Серед
    Серед або розширений інтерфейс Minecraft
    а відстеження даних/структури є інструментом для
    відобразити огляд Minecraft
    світу, фактично не створюючи його. Це
    може ...
    Завантажити Midst
  • Детальніше »

Команди Linux

Ad