如何用grep精准匹配文件中单个#开头的指定配置行?
精确匹配目标行的grep解决方案
你遇到的问题是因为之前的grep命令没有限定整行完全匹配,导致包含目标字符串的行(比如##dtoverlay=piscreen,drm)也被误匹配。可以用以下两种方法解决:
使用行首行尾锚定符:
grep "^#dtoverlay=piscreen,drm$" /boot/config.txt解释:
^表示匹配行的开头,$表示匹配行的结尾,这样只有当整行内容正好是#dtoverlay=piscreen,drm时才会被匹配,排除了开头多一个#的情况。使用grep的整行匹配选项
-x:grep -x '#dtoverlay=piscreen,drm' /boot/config.txt解释:
-x是grep的内置选项,直接强制匹配完全等于模式的整行,无需手动添加锚定符,用法更简洁。
内容的提问来源于stack exchange,提问作者AShah
相关产品推荐
相关产品推荐

