Возможно, это не относится к этому конкретно, но стоит упомянуть: если вы отредактируете файл конфигурации Upstart для службы, которая запущена, запуск restart НЕ перезагружает конфигурацию. Вы должны запустить stop и start, чтобы новые изменения вступили в силу.
http://upstart.ubuntu.com/cookbook/#restart
Введите следующую команду на терминале:
man grep
Затем введите символ косой черты, / и введите ваш поиск, например -i, а затем нажмите Enter. Это поместит курсор в первое вхождение строки поиска. Нажатие кнопки n перемещает курсор на следующее вхождение. Нажатие клавиши Shift + n перемещает курсор в предыдущее вхождение.
В то время как самый простой подход - поиск с помощью /, предложенный @girardengo, вы также можете использовать grep вместо sed, который я нахожу более простым:
$ man grep | grep -A 1 '^ *-i'
-i, --ignore-case
Ignore case distinctions in both the PATTERN and the input
files. (-i is specified by POSIX.)
Средство -A N означает «Распечатайте N строк после соответствующего совпадения. Просто трюк, чтобы получить следующие несколько строк, похожие на подход Авинаша sed.
Вы можете использовать функцию поиска внутри man, просто pres "s", введите ключ, который вы ищете, (-i в вашем случае) и нажмите ввод.
Или вы можете позволить этому сайту выполнить поиск:
http://explainshell.com/explain?cmd=grep+-i
Вам нужно переключиться с используя терминал для браузера, но есть http://explainshell.com/explain?cmd=grep+-i тоже.
Самый эффективный метод, о котором я знаю, - это поиск справочной страницы для -i (этот сайт, похоже, не смог отобразить мой код. Я имею в виду <space><space><space>-i). Это 3 пробела (вам может потребоваться больше / меньше пробелов), а затем флаг, который вы ищете. Это почти всегда работает в моем опыте, и вы можете изменить его на какой-то его вариант в тех случаях, когда он не работает.
Это работает, потому что фактическая документация флагов обычно имеет отступы. Он избегает поиска других упоминаний флага в других разделах, потому что перед ними обычно остается только одно пространство.
Через все ответы могут быть прекрасными, но я думаю, что вы фокусируетесь только на части документации, а не на всех. Например, чтобы найти переключатель -i документации grep:
info grep Invoking Command-line\ Options Matching\ Control
Я найду всю информацию о «grep», как «вызывать» конкретные «параметры командной строки» для «контроль соответствия». К сожалению, это не идет более глубоко, чем это, но у него есть -i, -y, --ignore-case в первых 25 строках, что-то разумное, что вам не нужно прокручивать весь ваш путь вниз.
Это решение является более гибким, а также позволяет вам искать все инфопакеты:
info --apropos=--ignore-case
"(coreutils)join invocation" -- --ignore-case <1>
"(coreutils)uniq invocation" -- --ignore-case <2>
"(coreutils)sort invocation" -- --ignore-case
"(gettext)msggrep Invocation" -- --ignore-case, ‘msggrep’ option
"(grep)Matching Control" -- --ignore-case
(вместо -i вместо -i ему пришлось использовать --ignore-case, но вы можете просто обрабатывайте вывод на информацию в любом случае)
В этом случае у вас есть имя информационной страницы и точный раздел. Ах, почти забыл, вы можете просто вставить свой путь через большинство разделов информационных страниц.
Вы можете использовать Perl и его «режим абзаца», чтобы извлечь только соответствующий абзац:
man grep | perl -00 -ne 'print if / -i/'
Мой любимый подход к поиску данной опции на странице man - использовать регулярное выражение, подобное \s{2,}-option. Для рассматриваемого вопроса вы можете сделать man grep, а затем ввести регулярное выражение:
/\s{3,}-i
или
/ {3,}-i
^------------- space here
Это будет соответствовать -i только тогда, когда последуют три или больше пробелов.
Поскольку less используется по умолчанию в качестве пейджера для man, вы можете использовать переменную среды LESS для передачи шаблона для поиска, когда less открывает страницу. Это идентично выполнению, например, man ls, а затем выполните поиск опции --all или -a, введя /, а затем введите шаблон, например. --all или -a.
Все это может быть выполнено:
LESS='+/--all' man ls
Или
LESS='+/-a' man ls
Введите то, что вы хотите найти после /.
Предположительно это лучше всего подходит для длинных опций (например, --all) по сравнению с короткими (например, -a).