当我搜索find匹配命令的手册页时,type它会返回很多我不想要的搜索结果。相反,我想用一个命令,它返回仅在搜索结果-type。
该命令man find | grep -type不起作用。它返回:
grep: invalid option -- 't'
Run Code Online (Sandbox Code Playgroud)
Wil*_*ard 12
如果要对以连字符开头的模式进行 grep,请--在指定的模式之前使用。
man find | grep -- -type
Run Code Online (Sandbox Code Playgroud)
如果您需要更多信息,例如描述选项的整个部分,您可以尝试使用 Sed:
$ man find | sed -n '/-mindepth/,/^$/p'
-mindepth levels
Do not apply any tests or actions at levels less than levels (a
non-negative integer). -mindepth 1 means process all files
except the command line arguments.
Run Code Online (Sandbox Code Playgroud)
但是,这不适用于您可能搜索的每个选项。例如:
$ man find | sed -n '/^[[:space:]]*-type/,/^$/p'
-type c
File is of type c:
Run Code Online (Sandbox Code Playgroud)
不是很有帮助。更糟糕的是,对于某些选项,您可能会误以为自己会阅读有关该选项的全文,而实际上并没有。例如,搜索-delete忽略了非常重要的警告包含作为第二该标题下段落。
我的建议是使用标准的调用man与LESS环境变量设置。我在这个网站上的回答中经常使用它。
LESS='+/^[[:space:]]*-type' man find
Run Code Online (Sandbox Code Playgroud)
要了解有关其工作原理的更多信息,请参阅:
LESS='+/^[[:space:]]*LESS ' man less
LESS='+/\+cmd' man less
LESS='+/\/' man less
Run Code Online (Sandbox Code Playgroud)
如果您只想在手册页中以交互方式快速找到该选项,请学习使用less的搜索功能。另请参阅:
| 归档时间: |
|
| 查看次数: |
6507 次 |
| 最近记录: |