有时我想知道某个特定标志的含义。例如:
人Apache2: (...) -L 输出指令列表以及预期的参数和 该指令有效的地方。
那么有没有办法使用类似“man apache2 -L”这样的命令,它只告诉我 -L 的含义?这样就不用再浏览手册了。
答案1
不,这不是你想要的方式。但你知道你可以在里面搜索吗man
?大多数系统使用less
man 浏览器,因此你可以使用命令进行搜索/
(h
按获取更多帮助)。如果你要查找特定的开关,你可以利用这些开关大多数时候在行首使用缩进格式化的事实并使用正则表达式:
^[ \t]+-link
将搜索字符串-link
作为一行中第一个非空白字符。这样,您很可能会找到开关的实际解释,而不是其他部分中可能的引用。
答案2
我运行man commandname
并使用/
输入像您示例的搜索字符串-L
。
答案3
如果您的版本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
并转到下一页时,搜索也将在其中完成。