标题: linux 中 expect 如何使用正则修饰符
时间: 2022-07-10发布,2022-07-10修改
我正在写一个自动登录远程 ssh 的脚本
以下为 test.exp 内容
#!/usr/bin/expect
set username root
set password root
set host 192.168.123.6
set port 22
spawn ssh $username@$host -p $port
expect {
-re {([Pp]password} { send "$password\r"}
}
注意 -re {([Pp]password} { send "$password\r"}
我想使用修饰符 i 而非 [Pp] 来使其不区分大小写,但是我不知道怎么添加
我在百度,Stack Overflow中都找不到例子
小米MIX2s(白)『回复列表(9|显示机器人聊天)』
查阅官网文档后,已解决,使用 -nocase 参数(没有使用修饰符,在官网中大致看了一下,没有找到修饰符相关内容,或许不支持)
-nocase -re {(password} { send "$password\r"}
官网对应文档如下
The -nocase flag causes uppercase characters of the output to compare as if they were lowercase characters. The pattern is not affected.
小米MIX2s(白)