Linuxshell脚本示例(二)-创新互联
一、正则表达式
a、基本正则表达式

| 元字符 | 描述 |
|---|---|
| . | 匹配任意单个字符 |
| * | 匹配其前面的字符任意次 |
| .* | 任意长度的任意字符 |
| [] | 匹配指定范围内的任意单个字符 |
| [^] | 匹配指定范围外的任意单个字符 |
| [:lower:] | 小写字母 |
| [:upper:] | 大写字母 |
| [:alpha:] | 所有字母 |
| [:digit:] | 数字 |
| [:alnum:] | 所有数字和字母 |
| [:punct:] | 标点符号 |
| [:space:] | 空白字符 |
| \? | 匹配其前面的字符1次或0次 |
| {m,n} | 匹配其前面的字符至少m次,至多n次 |
| ^ | 铆定行首,此字符后面的任意内容必须出现在行首 |
| $ | 铆定行尾,此字符前面的任意内容必须出现在行尾 |
| ^$ | 表示空白行 |
| \<或\b | 铆定词首,其后面的任意字符必须作为单词的首部出现 |
| \>或\b | 铆定词尾,其前面的任意字符必须作为单词的尾部出现 |
| () | 分组 |
| (ab)* | ab作为一个整体,可以出现任意次 |
| (ab).*\1 | 引用第一个左括号以及与之对应的右括号所包括的所有内容 |
| (ab).*\2 | 引用第二个左括号以及与之对应的右括号所包括的所有内容 |
b、扩展整个表达式
| . | 匹配任意单个字符 |
|---|---|
| [] | 匹配指定范围内的任意单个字符 |
| [^] | 匹配指定范围外的任意单个字符 |
| * | 匹配其前字符任意次 |
| ? | 匹配其前字符0次或1次 |
| + | 匹配其前字符至少1次,类似于基本正则表达式{1,} |
| {m,n} | 匹配其前面的字符至少m次,至多n次 |
| ^ | 行首 |
| $ | 行尾 |
| \<或\b | 词首 |
| \>或\b | 词尾 |
c、实例
cp一份/etc/passwd文件到/tmp
#查找特定的关键字
grep -n "ntp" /tmp/passwd
#对查找结果进行取反
grep -vn "ntp" /tmp/passwd
#利用[]查找集合字符
grep -n "p[ou]" /tmp/passwd
#利用^取反
grep -n "p[^o]" /tmp/passwd
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
分享题目:Linuxshell脚本示例(二)-创新互联
文章起源:http://lzwzjz.cn/article/dgphgs.html


咨询
建站咨询
