Назад | Перейти на главную страницу

Консультации по страницам MAN для конкретных флагов

Иногда я хочу знать, что означает конкретный флаг. Например:

man apache2:
(...)
-L     Output a list of directives together with expected arguments and
              places where the directive is valid.

Так есть ли способ использовать что-то вроде «man apache2 -L», и он говорит мне только то, что означает -L? Было бы здорово, так что сэкономьте на просмотре руководства.

Нет, не так, как ты хочешь. Но знаете ли вы, что вы можете искать внутри man? Большинство систем используют less как браузер человек, поэтому вы можете искать с / команда (нажмите h для получения дополнительной помощи). Если вы ищете определенный переключатель, вы можете использовать тот факт, что они отформатированы с отступом в начале строки большую часть времени и использовать регулярное выражение:

^[ \t]+-link

будет искать строку -link как первый непробельный символ строки. Таким образом, вы, скорее всего, найдете фактическое объяснение переключателя, а не возможные ссылки в других разделах.

Если ваша версия man использует less в качестве пейджера вы можете использовать эту функцию Bash для перехода непосредственно к первому вхождению данной строки в man страница:

mans () { local pages string; if [[ -n $2 ]]; then pages=(${@:2}); string="$1"; else         pages=$1; fi; man ${2:+--pager="less -p \"$string\""} ${pages[@]}; }

Использование:

mans '-E' grep

Вы можете перейти к определенному разделу серии страниц:

mans DESCRIPTION grep sed awk

Когда вы нажимаете q затем Войти выйти из одного man страницу и переходите к следующей, поиск будет производиться и на ней.

я бегу man commandname и использовать / чтобы ввести строку поиска, как в вашем примере -L.