Доброе... Для автоматического заведения пользователей в openvpn я дошел до expect'a ) Посчитал, сколько нужно раз вводить данные, получается 14 раз. В начале два пароля.
Вот написал такой скрипт:
#!/bin/bash
#!/usr/bin/expect
expect -c 'spawn ./build-key-pass tester9
exp_internal 1
expect password;
send password\n;
expect again;
send password\n;
expect continue;
send RU\r;
expect continue;
send SA\r;
expect continue;.
send Sa\r;.
expect continue;
send Company\r;
expect continue;
send New\r;
expect continue;
send tester9\r;
expect continue;
send ServerName\r;
expect continue;.
send tester9@domen.rs\r;
expect continue;
send \r;
expect continue;
send \r;
expect continue;.
send yes\r;
expect continue;
send yes\r;'
но естественно, не работает)
Получаю такой бесконечный вывод на экран:
expect: does "Generating a 2048 bit RSA private key\r\n....................
...............+++\r\n.." (spawn_id exp4) match glob pattern "password"? no
подскажите пожалуйста, что не так?
Или скажите, где документация есть по expect'у
Меня вилимо гугл забанил), нашел только примеры. но они многие для ssh...
Какой принцип то?
Expect сначала перехватывает ввод. а потом даем свое значение?
и в чем разница между /n и /r n - перенос строки, типа Enter, а r? Спасибо.