我想在文件中grep以破折号/连字符开头的字符串,比如-X,但这是一个命令行参数。

我试过了:

grep "-X"
grep \-X
grep '-X'

当前回答

如果您正在使用另一个实用程序,它将单个参数传递给grep,您可以使用:

'[-]X'

其他回答

grep -e -X就可以了。

grep -- -X
grep \\-X
grep '\-X'
grep "\-X"
grep -e -X
grep [-]X

Use:

grep—-X

文档

相关:裸双破折号是什么意思?(感谢nutty关于natty)。

没有一个答案对我没有帮助(ubuntu 20.04 LTS)。 我找到了另一个选择:

我的情况:

systemctl --help | grep -w -- --user

-w将匹配一个完整的单词。 ——表示命令参数的结束(将-w标记为不属于grep命令)

ls -l | grep "^-"

希望这个对你有用。