This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
программирование_диалогов_expect [2020/12/04 19:26] val |
программирование_диалогов_expect [2022/03/09 12:49] (current) val [Вариант использования с элементами конфигурации в коде скрипта] |
||
|---|---|---|---|
| Line 28: | Line 28: | ||
| expect "#" { send "ip scp server enable\n" } | expect "#" { send "ip scp server enable\n" } | ||
| expect "#" { send "end\n" } | expect "#" { send "end\n" } | ||
| + | |||
| + | #expect "#" { send "vlan database\n" } | ||
| + | #expect "#" { send "vtp transparent\n" } | ||
| + | #expect "#" { send "vlan 2 name LAN2\n" } | ||
| + | #expect "#" { send "exit\n" } | ||
| expect "#" { send "write\n" } | expect "#" { send "write\n" } | ||
| Line 53: | Line 58: | ||
| 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> | ||