regex - TCL期望正则表达式

标签 regex tcl expect

我正在尝试编写一个脚本,该脚本通过TCL/Expect从一个系统爬升到另一个系统。它为我工作。我需要一个正则表达式,其中期望“$” 期望“#” 结合在一起,以便可以包含路径中具有提示符的任何系统。

#!/usr/bin/expect
# Using ssh from expect

log_user 0
spawn ssh test@192.168.2.24
expect "sword: "
send "test\r"
expect "$ "
send "ssh beta\r"
expect "# "
send "uptime\r"
expect "# "

set igot $expect_out(buffer)
puts $igot

最佳答案

用这个:

expect -re {[$#] }

这样做的关键是:添加-re标志,以便我们可以匹配RE,并将RE放入{braces}中,以免被替换。

关于regex - TCL期望正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6491351/

相关文章:

javascript - 未捕获的语法错误 : Invalid regular expression flags

regex - 匹配 Linux Grep 命令字符串之间的任何内容

php - 如何使用正则表达式在 PHP 中将字符串设为 "clean"?

TCL exec 在列表中包含特殊字符

c - 从源构建期望(静态链接)

python - 路径功能无法识别问号

http - 是否有合适的钩子(Hook)来拦截所有到 OpenACS/AOLServer 系统的 POST?

string - 如何在 tcl 中执行子字符串提取和替换

linux - 使用脚本 bash/expect 保持 ssh session 事件

linux - 期望脚本中的退出处理程序不删除文件