显示/etc/inittab中以#开头,且后面跟了一个或者多个空白字符,而后又跟了任意非空白字符的行 ?
参考答案:
要显示/etc/inittab
文件中以#
开头,后面跟着一个或多个空白字符,然后又跟着任意非空白字符的行,你可以使用grep
命令结合正则表达式来实现。
以下是相应的grep
命令:
grep '^\s*#\s\+[^[:space:]]' /etc/inittab
解释:
^
:表示行的开头。\s*
:表示零个或多个空白字符(包括空格、制表符等)。#
:表示#
字符本身。\s\+
:表示一个或多个空白字符。注意这里的+
前面有一个反斜杠,是因为在正则表达式中+
是一个特殊字符,表示“一个或多个前面的元素”。而我们要匹配的是字面上的+
字符,所以需要对其进行转义。但在这里,可能是一个错误,因为我们实际上想要匹配的是“一个或多个空白字符”,所以应该使用\s+
而不是\s\+
。[^[:space:]]
:表示任意一个非空白字符。[[:space:]]
是一个字符类,匹配任何空白字符。^
在字符类的开头表示“非”,所以[^[:space:]]
匹配任何非空白字符。
修正后的命令应该是:
grep '^\s*#\s+[^[:space:]]' /etc/inittab
这个命令会匹配以零个或多个空白字符开头,然后是#
字符,再后面是一个或多个空白字符,最后是一个非空白字符的行。