반응형
2012/01/19 - [Study/Linux] - 너무나 강력한 expect
2012/01/18 - [Study/Linux] - tcl 문법
어제 오늘 expect의 강력한 기능에 놀라고 있습니다.
이제 약간의 새로운 시나리오입니다.
1번 서버에서 2번서버로 ssh 접속을 하고(물론 여기서 암호 입력도 처리할수 있으나 전 RSA인증을 사용하므로 여기서는 패스, 이건 인터넷에서 보면 많이 나옵니다.) 그런다음 2번서버에다가 sudo shutdown -r now 라는 명령어를 내려서 재부팅하는 절차입니다.
그럼 2가지 방법입니다.
아규먼트를 받아서 shutdown -r now를 칠것인가 , 아니면 아예 입력되어있는 스크립트일것 인가.
일단 어짜피 전 재부팅만 필요한 기능이여서 안에 집어 넣었습니다.
spawn ssh 계정@ 주소
send "sudo shutdown -r now\n"
sleep 3
send "password\r\n"
interact
이게 끝입니다. 저기서 가장 중요한 부분은 sleep3과 \r\n과 넣는부분입니다.
일단 \n이 개행할때 쓰는건 알겠는데, \r은 저도 모르겠습니다. 외부소스를 찾아쓴거라
그런데 sleep 이 중요한 이유는
sleep이 없으면 저 스크립트들이 더 빨리 실행되어 버립니다. 즉 sudo 인증창이 나오기전에 저 프로그램이 끝난다는것입니다.
그래서 sleep 3초간 대기 한다음에 sudo가 나오면 그다음 명령어를 보내라는것입니다.
2012/01/18 - [Study/Linux] - tcl 문법
어제 오늘 expect의 강력한 기능에 놀라고 있습니다.
이제 약간의 새로운 시나리오입니다.
1번 서버에서 2번서버로 ssh 접속을 하고(물론 여기서 암호 입력도 처리할수 있으나 전 RSA인증을 사용하므로 여기서는 패스, 이건 인터넷에서 보면 많이 나옵니다.) 그런다음 2번서버에다가 sudo shutdown -r now 라는 명령어를 내려서 재부팅하는 절차입니다.
그럼 2가지 방법입니다.
아규먼트를 받아서 shutdown -r now를 칠것인가 , 아니면 아예 입력되어있는 스크립트일것 인가.
일단 어짜피 전 재부팅만 필요한 기능이여서 안에 집어 넣었습니다.
spawn ssh 계정@ 주소
send "sudo shutdown -r now\n"
sleep 3
send "password\r\n"
interact
이게 끝입니다. 저기서 가장 중요한 부분은 sleep3과 \r\n과 넣는부분입니다.
일단 \n이 개행할때 쓰는건 알겠는데, \r은 저도 모르겠습니다. 외부소스를 찾아쓴거라
그런데 sleep 이 중요한 이유는
sleep이 없으면 저 스크립트들이 더 빨리 실행되어 버립니다. 즉 sudo 인증창이 나오기전에 저 프로그램이 끝난다는것입니다.
그래서 sleep 3초간 대기 한다음에 sudo가 나오면 그다음 명령어를 보내라는것입니다.
반응형
'Study > Linux' 카테고리의 다른 글
Manual Installation and Registration of Java Plugin for Linux (0) | 2012.02.09 |
---|---|
우분투 fstab (2) | 2012.01.27 |
linux grep (0) | 2012.01.25 |
Secure CRT 설정 (0) | 2012.01.20 |
너무나 강력한 expect (4) | 2012.01.19 |
tcl 문법 (0) | 2012.01.18 |