User Tools

Site Tools


программирование_диалогов_expect

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
программирование_диалогов_expect [2020/02/26 17:32]
val [Вариант использования с элементами конфигурации в коде скрипта]
программирование_диалогов_expect [2021/06/15 12:44]
val [Communigate CLI]
Line 13: Line 13:
  
 <​code>​ <​code>​
 +server# ssh switchN
 +
 server# cat cisco_change_conf.exp server# cat cisco_change_conf.exp
 </​code><​code>​ </​code><​code>​
Line 51: Line 53:
 send "​\n"​ send "​\n"​
 ... ...
 +</​code>​
 +
 +===== Communigate CLI =====
 +
 +<​code>​
 +mail# cat cgp_cli.exp
 +</​code><​code>​
 +#​!/​usr/​bin/​expect
 +
 +set cmd [lindex $argv 0];
 +
 +spawn telnet localhost 106
 +
 +expect "​200"​ {
 +        send "USER postmaster\n"​
 +}
 +
 +expect "​300"​ {
 +        send "PASS Pa\$\$w0rd\n"​
 +}
 +
 +expect "​200"​ {
 +        send "​$cmd\n\n"​
 +}
 +
 +expect "​200"​ {}
 +
 +sleep 1
 +send "​QUIT\n"​
 +send_user "​\n"​
 +exit 0
 +</​code><​code>​
 +mail# chmod +x cgp_cli.exp
 +
 +mail# ./​cgp_cli.exp '​CREATEACCOUNT user2 {Password = "​password2";​RealName = "​Петр Петрович Петров";​}'​
 +
 +mail# ./​cgp_cli.exp '​GETACCOUNTSETTINGS user2'
 </​code>​ </​code>​
  
Line 96: Line 135:
 </​code><​code>​ </​code><​code>​
 # /​usr/​share/​originate_ami.exp 403 301 "Hello World" # /​usr/​share/​originate_ami.exp 403 301 "Hello World"
 +</​code>​
 +
 +===== Docker ======
 +<​code>​
 +webinar BBB# cat /​root/​scripts/​ch_web_pass.exp
 +</​code><​code>​
 +#​!/​usr/​bin/​expect
 +
 +set email [lindex $argv 0];
 +set password [lindex $argv 1];
 +
 +spawn docker exec -it greenlight-v2 bash
 +send "​\n"​
 +expect "​bash*#"​ {send "​bundle exec rails c\n"}
 +expect "​irb*>"​ { send "​User.find_by(email:​ \"​$email\"​).update_attribute(:​password,​\"​$password\"​)\n"​ }
 +expect "​irb*>"​ { send "​exit\n"​ }
 +expect "​bash*#"​ { send "​exit\n"​ }
 +send_user "​\n"​
 +exit 0
 </​code>​ </​code>​
программирование_диалогов_expect.txt · Last modified: 2022/03/09 12:49 by val