export 를 이용한 telnet 명령어 일괄 처리

리눅스/OS 일반|2018. 1. 29. 11:30
반응형

아래는 POE 스위치로 전원을 켜는 스크립트입니다. (스플리터를 이용해 전원스위치를 만든 상황)

텔넷으로 로그인하고 프롬프트에 따라 입력값을 넣도록 하였습니다.

중간에 sleep 을 5로 주면 서버가 꺼집니다.


# yum install expect


# vi test.sh

#!/bin/sh

/usr/bin/expect << EOF 

spawn telnet 192.168.99.36

expect "'^]'."

expect "Username:"

send "admin\r";

expect "Password:"

send "12345678\r";

expect "L2GS99-2-1#"

send "configure\r";

expect "L2GS99-2-1(config)#"

send "interface ethernet 1/6\r";

expect "L2GS99-2-1(config-if)#"

send "power inline\r";

sleep 2;

expect "L2GS99-2-1(config-if)#"

send "no power inline\r";

expect "L2GS99-2-1(config-if)#"

send "end\r";

expect "L2GS99-2-1#"

send "exit\r";

EOF    // 좌측에 공백 (들여쓰기) 이 있으면 안됨



expect "L2GS99-2-1#" 과 같이 호스트 별로 출력되는게 다를 경우 아래와 같이 일부만 입력하여 사용이 가능합니다.
expect "#"


반응형

댓글()