匹配 cmdb 字符串,字符串的开头或者结尾是空格字符,你可以使用以下 grep 命令:
grep -E '(^| )cmdb( |$)' filename.txt
解释:
(^| ):表示cmdb前面要么是行的开始(^),要么是一个空格字符()。cmdb:要匹配的字符串。( |$):表示cmdb后面要么是一个空格字符(),要么是行的结束($)。filename.txt是要搜索的文件名。
这个命令的效果:
- 它会找到所有以
cmdb开头或结尾有空格的行,例如:" cmdb"(前面有空格)"cmdb "(后面有空格)" cmdb "(前后都有空格)
同时,行的开头或者结尾也可以是行的开始或结束。
引用变量
如果你想将 cmdb 替换为变量,例如替换为 $HOSTNAME变量,你可以使用双引号将整个 grep 命令包裹起来,以便变量能够被扩展。
以下是修改后的命令:
grep -E "(^| )$HOSTNAME( |$)" filename.txt
这样,$HOSTNAME 的值会被正确地插入到 grep 命令中。


















