如何立即获得某些命令选项的段落?


8

例如,apt-get我想立即-f从终端提示符跳至选项而不是整个手册,而不使用通过手册页进行搜索。



1
@M。贝塞拉,我的问题更广泛。
RS

@Becerra不仅是一个更广泛的问题,而且还是一个不同的问题,因为RS希望返回的结果中选项的整个段落man,而不是返回混杂的单独行列表。
karel

Answers:


6

所使用的默认寻呼机manless。您可以通过环境变量less传递直接理解的ERE(扩展正则表达式)搜索模式LESS,在这种情况下,您应该执行以下操作:

LESS='+/-f' man apt-get

这与/-f做完之后通过完全一样man apt-get

现在,这将突出显示所有-fS IN的man页面,直接跳转到所需的一个IE选项中-f,你可以利用ERE只匹配,与空格/制表符开头的行,其次是-f

LESS='+/^[[:blank:]]+-f' man apt-get

尽管这可以在此处完成,但仍可能不适用于所有页面,因为这将与-f在初始空格/制表符之后开始的任何内容匹配。在这些情况下,请稍微调整一下模式以满足您的需求。

您可以创建一个微型函数来传递搜索模式,并将man页面作为参数进行查找(如果您经常这样做)。


9

键入一个正斜杠,即您要搜索的内容,然后按Enter。您将跳到第一次出现。按下N可移至下一个事件并B返回。因此,在这种情况下:

/-f <enter>

4
尝试在破折号前添加几个空格。在大多数情况下,选项会缩进,并且应该直接跳至选项:/ -f。这应该绕过的任何内联用法-f
晶体管1年

1

使用sed显示的选项用连字符开始的整个段落。要-f通过运行单个命令立即显示该选项的整个段落,请使用:

man apt-get | sed -n '/-f,/,/^$/p'
   -f-,--no-f, -f=no or several other variations.

   -f, --fix-broken
       Fix; attempt to correct a system with broken dependencies in place.
       This option, when used with install/remove, can omit any packages
       to permit APT to deduce a likely solution. If packages are
       specified, these have to completely correct the problem. The option
       is sometimes necessary when running APT for the first time; APT
       itself does not allow broken package dependencies to exist on a
       system. It is possible that a system's dependency structure can be
       so corrupt as to require manual intervention (which usually means
       using dpkg --remove to eliminate some of the offending packages).
       Use of this option together with -m may produce an error in some
       situations. Configuration Item: APT::Get::Fix-Broken.  

这将返回-fman中选项的整个段落,apt-get但是可以通过消除逗号来改进上述命令-f,使其更普遍地起作用,如下所示:

man apt-get | sed -n '/-f/,/^$/p'

这将返回多个段落,其中大部分您都不希望阅读。通过阅读多个段落的第一行,您可以看到您只想显示包含该-f, --fix-broken选项的段落。执行以下操作:

man apt-get | sed -n '/--fix-broken/,/^$/p'
   -f, --fix-broken
       Fix; attempt to correct a system with broken dependencies in place.
       This option, when used with install/remove, can omit any packages
       to permit APT to deduce a likely solution. If packages are
       specified, these have to completely correct the problem. The option
       is sometimes necessary when running APT for the first time; APT
       itself does not allow broken package dependencies to exist on a
       system. It is possible that a system's dependency structure can be
       so corrupt as to require manual intervention (which usually means
       using dpkg --remove to eliminate some of the offending packages).
       Use of this option together with -m may produce an error in some
       situations. Configuration Item: APT::Get::Fix-Broken. 

这仅返回您要读取的输出。此方法适用于以连字符开头的任何其他选项,并且通常也可用于搜索其他命令中以连字符开头的选项apt-get

显示sed的其他信息

如果一个段落的描述没有提供足够的信息,则以下命令将显示与上一个命令相同的第一段,并在其后显示下一段。

LESS='+/^[[:space:]]*-f' man apt-get  

该命令的结果表明下一段不是很有趣,但是对于某些选项,下一段也很有趣。这就是为什么这也是一个有用的命令要知道的原因。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.