Lidt test fra Ubuntu

Ref: http://superuser.com/questions/670866/feeding-contents-of-a-text-file-as-command-to-telnet

expect - programmed dialogue with interactive programs

Ref: http://manpages.ubuntu.com/manpages/natty/man1/expect.1.html

Grundscriptet

Dette er "grundscriptet, som søger for at logge ind, agere og logge ud - jeg er ikke 100% sikker på om sleeps faktisk er nødvendige....:

Husker man ikke at lave logout eller fejler scriptet inden, da man få output fra forrige run ved næste run, og i det hele taget lidt "underligheder" (ked af det)

#!/usr/bin/expect
spawn telnet 10.0.0.110 10001
expect "'^]'."
send ">>Login 32010<<\r"
expect ">>Login Ok<<"
sleep .5;

......
......
......

sleep .5;
send ">>Logout<<\r"
expect ">>Logout Ok<<"
exit

 

List alle forbrugsregistrende devices

#!/usr/bin/expect
spawn telnet 10.0.0.110 10001
expect "'^]'."
send ">>Login 32010<<\r"
expect ">>Login Ok<<"
sleep .5;
send ">>Get Devices<<\r"
sleep .5;
send ">>Logout<<\r"
expect ">>Logout Ok<<"
exit

Scriptets output

batman:Zensehome bnp$ ./getdevices.exp
spawn telnet 10.0.0.110 10001
Trying 10.0.0.110...
Connected to 10.0.0.110.
Escape character is '^]'.
>>Login 32010<<
>>Login Ok<<
>>Get Devices<<
>>Get Devices 18324, 10553, 24955, 19334, 16469, 16476, 17965, 17934, 17951, 27544, 24963, 24958, 24953, 10576, 10598, 24965, 24956, 50371, 24952, 24957, 10604, 10170, 6769, 24944, 24951, 27545, 27540, 27541, 24960, 24946, 24943, 24947, 24941, 24948, >>Logout<<
24949, 27538, 24945, 27542, 24954, 27546, 24720, 16478, 17933, 58739, 24942, 24959, 24718, 24950, 24717, 24719, 16682, 24716, 27539<<
>>Logout Ok<<
batman:Zensehome bnp$

 

Tænd et Device

Her tænder vi for 10604 som er en loftslampe hos mig.

 #!/usr/bin/expect
spawn telnet 10.0.0.110 10001
expect "'^]'."
send ">>Login 32010<<\r"
expect ">>Login Ok<<"
sleep .5;
send ">>Set 10604 1<<"
sleep .5;
send ">>Logout<<\r"
expect ">>Logout Ok<<"
exit