Linux/unix中 grep 正则使用示例(grep用法详解:grep与正则表达式)
Grep regex根据指定的规则模式匹配搜索内容,这可以帮助我们精确找到所需的内容。
下面,让我们看一下如何使用grep正则匹配内容吧。
以下内容是我们本次演示所需的测试文件:
~ cat test.txt
1:11111
1:22222
3:22222
2:33333
4:ddddd
匹配以特定字符开头的内容
在以下示例中,我们将使用grep命令在测试文件中,匹配以数字“ 1”开头的内容。
~ grep -E "^1" test.txt
1:11111
1:22222
~ grep "^1" test.txt
1:11111
1:22222
匹配包含指定字符串的内容
在以下示例中,我们将使用grep匹配测试文件中包含指定字符串的内容。例如,匹配包含“ 22”的行。
~ grep -E "22" test.txt
1:22222
3:22222
~ grep "22" test.txt
1:22222
3:22222
匹配以指定字符结尾的内容
在下面的示例中,我们将使用grep定期匹配以指定字符结尾的测试文件中的内容。例如,匹配以数字“ 3”结尾行。
~ grep -E "3#34; test.txt
2:33333
匹配以多个指定字符开头的行
例如:匹配以数字“ 1”或“ 2”开头的行。
~ grep -E "^[12]" test.txt
1:11111
1:22222
2:33333
匹配包含多个字符串的行
例如:匹配包含“ 1:2”或“ 2:2”的行。
~ grep -E "1:2|2:3" test.txt
1:22222
2:33333
匹配以特定字符串开头和以特殊字符串结尾的内容。
例如:匹配以1开头和以2结尾的内容。
~ grep -E "^1.*2#34; test.txt
1:22222
匹配以数字开头的行
~ grep -E "^[0-9]" test.txt
1:11111
1:22222
3:22222
2:33333
4:ddddd
匹配文件中的空行
~ grep -n "^#34; test.txt