shell脚本编程-正则表达式
上午知识点:
exoect 预期交互
expect << EOF
spawn 执行的交互命令
expect "命令的提示关键字" { send "要发送的命令 \r"}
...
expect "#" { send "exit \r" }
EOF
变量的默认值:
var=${ var:-word}
正则表达式:
通配符: * ? [ ] ^
*.txt 以.txt结尾
a??.txt 以。txt结尾的两个字符名的文件
[0-9] [a-z] [A-Z] [a-Z] [1,2]
[^0-9] 和 [!0-9] //取反,非数字
*5? : 倒数第二位第5的
{[abc],*.txt} : 匹配a 和b 和c 和以.txt 结尾
基本正则表:
^ : 表示匹配行首
$ : 匹配行尾
[ ] : 集合、匹配集合中任意的单个字符
[^] : 对集合进行取反
. : 匹配任意单个字符
* : 匹配前一个字符任意次数,*号不能单独使用
\{n,m\} : 匹配前一个字符n到m次
\{n\} : 匹配前一个字符n次
\{n,\} : 匹配前一个字符n次以上
\(\) : 保留
拓展正则表:
+ :最少匹配一次 1-∞
? :最多匹配一次 0-1 包含没有的情况
{n,m} : 匹配n到m次
() :组合为整体,保留
| &