少なくとも1つの数字、少なくとも1つの大文字、少なくとも1つの小文字、オプションの記号#&を含むキーボードからのパスワードを受け入れる必要があります。それは常にタイムアウトが、パスワードを検出していません...誰もがパスワードプロンプトを使用して動作しないことを確認する
package require Expect
log_user 0
send "Enter Password\n"
expect {
-re {(?=.*?[0-9])(?=.*?[a-z])(?=.*?[A-Z])[a-zA-Z0-9#&-]*} {send "Password ok"}
timeout { send "Time out" }
}
私は、コードを編集していたとパスワードは最初の試みで、正しい形式で指定されている場合にのみ、今、それが働いている...もしを助けることができます間違ったフォーマットが最初の試行で与えられ、期待は次の試行を待つでしょう。しかし、次のエントリが正しい場合であっても、Expectはそれを検出せずに次の試行に行き、最後にタイムアウトになります
あなたはおそらく 'send_user'と' expect_user'を探しています –