[tcljava-user] expect4j + tcl example
Brought to you by:
mdejong
From: YAO Y. <Yin...@al...> - 2008-12-18 00:09:37
|
Hi, I have seen some great stories about expect4j. Can someone kindly please give me an example? Or maybe you are even nicer, then please tell me how to use expect4j for the following very simple expect login script. I used interp.evalFile to call from java, but no success. Really appreciate it! Best regards, ------------ #!/usr/bin/expect -f set dut_target autok2 set dut_login_prompt "login :" set dut_login_name "admin" set dut_passwd_prompt "password :" set dut_passwd "switch" set dut_prompt "*->" set dut_pid -1 # # Login # proc login { target login_prompt login_name passwd_prompt passwd prompt } { spawn telnet $target expect $login_prompt send "$login_name\r" expect $passwd_prompt send "$passwd\r" expect $prompt send_user "logged into $target, spawnid $spawn_id\r" return $spawn_id } proc logout { target tid } { global spawn_id set spawn_id $tid send "exit\n" while { 1 } { expect { eof { send_user "logged out $target\r" break; } "*Confirm exit (Y/N)?*" { send "y\r" } { send_user "logout abnormally\r" break; } } } } # # Initialization # set dut_pid [login $dut_target $dut_login_prompt $dut_login_name \ $dut_passwd_prompt $dut_passwd $dut_prompt] logout $dut_target $dut_pid |