如何 grep 查找看起来像选项的模式?

如何 grep 查找看起来像选项的模式?
m@m-VirtualBox:~$ man netstat | grep "-t"
grep: invalid option -- 't'
Usage: grep [OPTION]... PATTERNS [FILE]...
Try 'grep --help' for more information.

我不想将-t选项传递给grep.相反,我想找到netstat有关netstat 选项的手册页中的行(-t如果有的话)。

我认为用-t引号引起来就足以将grep其解释为一种模式而不是一种选项,但我错了。

如何做我想做的事?

答案1

您可以使用双破折号表示选项结束--

在这种情况下:

man netstat | grep -- -t

答案2

我给你三个选择:

  1. 用于-e将其显式标记为模式:grep -e -t
  2. 用于--标记选项的结尾:(grep -- -t警告:--建议将选项结尾识别为含义,但不严格要求POSIX标准,所以它可能不完全可移植。)
  3. 更改模式,使其看起来不像是一个选项:(grep "[-]t"警告:在这里,您想要引用它,因此 shell 不会将其视为文件名通配符。另外,这不适用于使用grep -F或进行固定字符串搜索fgrep。)

相关内容