bash 腳本可選語句中的 Expect 腳本

bash 腳本可選語句中的 Expect 腳本

使用:CentOS 6.2 BASH shell

我的劇本是這樣的

#!/bin/bash
INSTALL_PATH="Enter install path"
CR="\n"
/bin/su root -c "/usr/bin/expect << EOF
spawn name.run
expect $INSTALL_PATH
send $CR
EOF; ... do more stuff..."

現在有時我的 name.run 文件會詢問“您想卸載嗎?”如何在第一次發送後將其作為可選參數發送?

答案1

您可以在一個expect命令中放置多個模式

spawn name.run
expect $INSTALL_PATH
send \r
expect {
  {Would you like to uninstall?} {
    send yes\r
    exp_continue 
  }
  eof 
}

請注意,您發送“\r”來“按 Enter”。

另外,此處文件的終結詞必須單獨出現在一行上——後面不能跟“; more stuff”

相關內容