Shell 编程
1. 基础正则表达式
1.1 正则表达式与通配符
正则表达式用来在文件中匹配符合条件的字符串,正则是包含匹配。grep、awk、sed 等命令可以支持正则表达式。
通配符用来匹配符合条件的文件名,通配符是完全匹配。ls、find、cp 这些命令不支持正则表达式,所以只能使用 shell 自己的通配符来进行匹配了。
1.2 基础正则表达式

" * " 代表前一个字符匹配0次,或任意多次。

"." 代表匹配除了换行符外任意一个字符。

"^" 代表匹配行首,**"$"**匹配行尾。

“ [] ” 匹配括号中指定的任意一个字符,只匹配一个字符。


" \ " 转义符
匹配使用 “.”结尾的行。
grep "\.$" test_rule.txt
" {n}" 表示其前面出现的字符出现 n 次。

" {n,}" 表示其前面出现的字符出现不少于 n 次。
匹配最少用连续三个数字开头的行
grep "^[0-9]\{3,\}[a-z]" test_rule.txt
" {n,m}" 表示其前面出现的字符至少出现 n 次,最多出现 m 次。
匹配在字母 s 和字母 i 之间有最少一个a, 最多三个a
grep "sa\{1,3\}i" test_rule.txt
本文深入探讨Shell编程中正则表达式的应用,包括基础正则表达式与通配符的区别,以及如何利用grep、awk、sed等命令进行字符串匹配。通过实例演示,读者将掌握如何使用各种正则表达式元素,如*、.、^、$、[]、{}
905

被折叠的 条评论
为什么被折叠?



