我正在尝试查找文件中存在的一行:
devnode "^sda[1-9]?$"
我正在使用的命令是:
grep 'devnode \"\^sda\[1-9\]\?\$\"' $file
但这似乎不起作用。我已确保使用 $ like "grep '\$'" 在某些解决方案中报告,但它不起作用。
谁能帮我解决这个问题,令人沮丧。
谢谢
我正在尝试查找文件中存在的一行:
devnode "^sda[1-9]?$"
我正在使用的命令是:
grep 'devnode \"\^sda\[1-9\]\?\$\"' $file
但这似乎不起作用。我已确保使用 $ like "grep '\$'" 在某些解决方案中报告,但它不起作用。
谁能帮我解决这个问题,令人沮丧。
谢谢
grep 'devnode "^sda\[1-9\]?$"' file
Grep 理解两种不同版本的正则表达式语法:“基本”和“扩展”。
grep 'foo' 文件/使用基本正则表达式
grep -E 'foo' 文件/使用扩展正则表达式。
如果使用基本正则表达式,?、+、{、|、( 和 ) 没有特殊含义。如果使用扩展正则表达式,像这样。
grep -E 'devnode "\^sda\[1-9\]\?\$"' file
grep 'devnode "^sda\[1-9]?\$"' $file
在 POSIX BASIC REGEXP – https://www.mirbsd.org/man7/re_format – 一些字符只有在使用反斜杠时才会变得特殊,而不是没有它。