Это конечная цель: выполнить команду mysql с помощью сценария ожидания для отправки пароля при появлении запроса. Есть 3 файлов в общейожидать, что скрипт не правильно отправил пароль
- test.sh
- test1.sh
- test.exp
Вот коды:
test.sh (возвращает пароль, который необходим для подключения к базе данных mysql)
grep hibernate.connection.password /opt/cisco/cpam/properties/vx.hibernate.properties | sed 's/hibernate.connection.password=//g'
test1.sh (команда MySQL, которая должна быть та или иная строчка)
mysql -u cpam -p --protocol=tcp vxdb < /opt/cisco/cpam/import/MySQL_Views.sql
test.exp (ожидать скрипт, который отправляет пароль при выполнении команды MySQL)
set password [exec ./test.sh]
exec ./test1.sh
expect "Enter password: "
send "$password\r"
expect eof
Результат выполнения работы ожидается test.exp в том, что я вижу только приглашение:
Enter password:
Любой специалист может предоставить мне руку, чтобы узнать, что происходит не так? Это означает, что test1.sh успешно запущен, а также я много раз пробовал, включая использование только статического пароля. Все еще просто подсказка.
Спасибо!
Я чувствую себя исключительно глупым .. Спасибо – Tony