期待再次输入不同的命令的提示
spawn bash
sleep 1
expect "$"
send -- "whoami\r"
expect '$'
send -- "hostname\r"
此脚本仅执行第一个命令
一个明显的问题是,在第二个expect
命令中使用单引号'
,但是它们在Tcl语法中没有任何意义,因此,您期望的字符串将变为单引号-美元-单引号,这当然不匹配您的bash提示。请参见https://www.tcl.tk/man/tcl/TclCmd/Tcl.htm#M8以获取Tcl接受的报价形式。