0

我想自动化命令ssh-keygen -t rsa。独特之处在于该命令会在不同的条件下打印出不同的文本。例如,如果是第一次,它会输出enter passphraseand enter passphrase again。否则,它将提示Overwrite (y/n): 。如何在expect.

我试过使用模式动作对,比如

期望“输入密码” {发送“\r”} \

   "Overwrite (y/n): " {send "n\r"}

但是,它一次只处理一个提示;我该如何处理提示enter passphrase again

4

1 回答 1

1

使用exp_continue可以帮助您:

expect {
    "Overwrite (y/n)?" { send "n\r" ; exp_coninue }
    "Enter passphrase" { send "\r" ; exp_coninue }
    "passphrase again:" { send "\r" }
}
于 2012-09-20T12:46:31.213 回答