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

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

человек apache2:
(...)
-L Вывести список директив вместе с ожидаемыми аргументами и
              места, где директива действует.

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

3 ответа

Решение

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

^[ \t]+-link

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

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

Если ваша версия 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, затем Enter, чтобы выйти из man и перейдите на следующую страницу, поиск по ней тоже будет сделан.

Другие вопросы по тегам