Grep Command Notes
文章目录
反向查找
- -v
- –invert-match
- ?
- 查找没有被匹配到的内容
pattern 指定 -e pattern
-e pattern
perl 格式 regexp -P
-P
特点:
支持 extended regexp 的全套功能
- eg:
[[:digit:]]+
- eg:
支持类似 python regex 的功能
- eg:
\d+(\.\d+)?G
- eg:
有限制的 perl regexp 功能实现
- 部分perl regexp 功能grep 可能没有实现
扩展的(extended regular expression)regexp -E
-E
特点:
在 basic regexp 模式下
? + ( ) { }: 这些运算符出去了特殊意义,需要通过转义符使用它们的运算符功能, eg:\+- 注意:
*还可以直接作为运算符使用
在 extended regexp 模式下
? + ( ) { }可以当作运算符直接使用
字符集 character classes
python 中的字符集用法失效
\d \w等无法使用
支持的字符集写法:
[:alpha:],[:digit:],[:alphanum:]- 注意:上面的字符集不能够直接使用,而要包括在
[]内部使用, 比如:[:digit:]
例子
8.7G /home/sawyer/.cache/uv 8.0K /home/sawyer/.cache/venv-selector
匹配开头的 8.7G
使用basic regexp
1 2du -hs ~/.cache/*|grep -e '^[[:digit:]]\+\.[[:digit:]]\+G' du -hs ~/.cache/*|grep -e '^[[:digit:]]*\.[[:digit:]]*G'使用 extended regexp
1 2 3 4❯ du -hs ~/.cache/*|grep -e '^[[:digit:]]+\.[[:digit:]]+G' -E 4.7G /home/sawyer/.cache/huggingface 2.3G /home/sawyer/.cache/torch 8.7G /home/sawyer/.cache/uv使用 perl regexp
1 2 3 4 5 6 7 8 9 10❯ du -hs ~/.cache/*|grep -e '^[[:digit:]]+\.[[:digit:]]+G' -P 4.7G /home/sawyer/.cache/huggingface 2.3G /home/sawyer/.cache/torch 8.7G /home/sawyer/.cache/uv ❯ du -hs ~/.cache/*|grep -e '^\d+\.\d+G' -P 4.7G /home/sawyer/.cache/huggingface 2.3G /home/sawyer/.cache/torch 8.7G /home/sawyer/.cache/uv
文章作者
上次更新 2025-06-20 (811ee6f)