如何跳转到手册页中的特定标题?

例如:ssh_config

我在vim中为此设置了一个文件types。 我想要帮助程序

man 

当然,这是行不通的,如果我一个字就说

 ServerAliveCountMax 

我得到一个错误,因为ServerAliveCountMax没有man pager,它在ssh_config的man页面中。

有没有办法从命令行跳转到一个string,或者在人的内部运行某种types的命令? 其实很像信息:

 info screen Miscellaneous 

将带我到屏幕信息页的杂项部分。

这与男人可能吗? 即使运行search将服务…

编辑:我正在使用OSX 10.6.5。 用默认的man(/ usr / bin / man)

编辑:我说一点方言;),所以我被引导到正确的答案:

 man -P 'less -p PATTERN' ssh_config 

是在OSX / * BSD上的调用看起来。

从GNU man的命令行:

 man --pager='less -p ^ENVIRONMENT' man 

或BSD的man

 man -P 'less -p ^ENVIRONMENT' man 

将跳转到man页面的“ENVIRONMENT”标题。

这是一个方便的function:

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

例子:

正常使用:

 mans bash 

转到“描述”标题:

 mans ^DESCRIPTION bash 

转到每个手册页的“DESCRIPTION”标题(按qEnter转到下一个):

 mans ^DESCRIPTION bash ksh zsh 

转到“参数扩展”子标题(您可以使用正则expression式search任何string):

 mans '^ *Parameter Expansion' bash 

search您在Less中使用的最近的正则expression式:

 mans '' bash 

您search的匹配不会突出显示。 如果你更喜欢它,只要将-G从选项中移除到less

这个函数不会尝试处理man支持的其他参数和选项。

在男人你可以键入/后跟一个模式来匹配,例如find你将键入屏幕手册页的DEFAULT KEY BINDINGS部分

 /^DEFAULT KEY BINDINGS 

我使用一个简单的技巧,在手册页的各个部分之间跳转相对较快:我按/^[AZ] ,然后我可以按nN来前后跳。

search正则expression式利用典型手册页的基本结构 – 主要部分用大写字母表示,它们开始一行,没有缩进,因此它们应该出现在行首。

/在less会做一个向前search,和? 会做一个反向search。 按h查看完整列表。