可能这是新手问题,但我必须问一下!
一般来说,我理解正则表达式,但我不明白,为什么这个:
^.{8}[[:blank:]]{2}
Run Code Online (Sandbox Code Playgroud)
适用于此行:
prelink: /lib/libkeyutils-1.2.so: at least one of file's dependencies has changed since prelinking
Run Code Online (Sandbox Code Playgroud)
在这个grep命令中:
echo "prelink: /lib/libkeyutils-1.2.so: at least one of file's dependencies has changed since prelinking" | grep -v '^.\{8\}[[:blank:]]\{2\}'
Run Code Online (Sandbox Code Playgroud)
哪里:
The says "beggining of line"
The .{8} says "any eight characters"
The [[:blank:]]{2} says "any two space characters"
所以^.{8}匹配"prelink:",当[[:blank:]] {2}需要匹配""(两个空格),但我们只有""(一个空格)...那么为什么这个工作在所有,如果这项工作为什么这一个:
^.{8}[[:blank:]]{1}
Run Code Online (Sandbox Code Playgroud)
不起作用?
谢谢你提前.
您使用grep的-v选项会导致它打印不 匹配的行.删除-v它,它将按预期工作.
grep --help ... -v, --invert-match select non-matching lines ...
| 归档时间: |
|
| 查看次数: |
87 次 |
| 最近记录: |