grep + 当需要在点字符前添加反斜杠时

grep + 当需要在点字符前添加反斜杠时

文件夹下——/var/my_private_pkgs

我们转移了从 ISO rhel 8.0 中分离出来的包

   rhel8.0aa
   rhel8.0ab
   rhel8.0ac
    .
    .

我们正在执行以下操作以验证包的总和(以字节为单位)

du -sb /var/my_private_pkgs/* | grep rhel8.0[a-z] 

419430400       rhel8.0aa
419430400       rhel8.0ab
419430400       rhel8.0ac
.
.

但我不确定上面的情况是否需要在点前添加反斜杠?在 grep 中如下

 du -sb /var/my_private_pkgs/* | grep rhel8\.0[a-z] 

两种情况都可以吗? ,

或者也许更好的是在点之前添加反斜杠?

答案1

当你想匹配时,你需要添加反斜杠.

在正则表达式中,.是一个特殊字符,表示“任何字符”。
例如,它也会匹配rhel18x0a您可能不想要的内容。

顺便说一句,您还应该引用您的模式,因为 shell 会解释您的反斜杠,并在将其发送到之前有效地将其删除grep

du -sb /var/my_private_pkgs/* | grep 'rhel8\.0[a-z]'

相关内容