如果存在空格,则grep不会生成特定单词

时间:2013-03-25 11:41:02

标签: shell

请解决这个问题并帮助我。

我有一个包含以下内容的文件

  

#AuthName
  AuthName指令

如果我用以下命令grep,

grep "^#AuthName$" <filename>

结果,

#AuthName

但是,
如果我使用#AuthName前面的空格修改内容,如下所示,

  

#AuthName
  AuthName指令

它不会给出任何带有相同grep命令的输出。问题可能是因为那个空间。如何解决这个问题?

感谢。

2 个答案:

答案 0 :(得分:1)

grep字符串中的克拉表示行首。因此,它只返回“#AuthName”位于行开头的内容。把克拉拿出来:

grep "#AuthName" <filename>

此外,美元符号表示行尾,因此它只匹配#AuthName开始和结束行的实例。

答案 1 :(得分:1)

您可以在那里放置一个可选空间。

grep "^ *#AuthName$"