특정 호스트에 자동으로 로그인할 수 있는 쉘 스크립트를 작성해보자.
아래와 같이 expect 스크립트(conn_expect.sh)를 작성하자. 인수로 host, user, pass 등을 입력한다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
#!/usr/bin/expectset v_host [lindex $argv 0]set v_user [lindex $argv 1]set v_pass [lindex $argv 2]spawn telnet $v_hostexpect "ogin: "sleep 1send "$v_user\r"expect "assword: "sleep 1send "$v_pass\r"interact |
접속 정보가 저장된 쉘 스크립트(conn.sh)를 작성하자. 4행에 호스트 명, 7~9행에 해당 접속 정보를 설정한다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
#!/bin/kshPS3=":"select v_choice in host1 host2 host3do case $v_choice in host1) set -A a_info ... ... ...; break ;; host2) set -A a_info ... ... ...; break ;; host3) set -A a_info ... ... ...; break ;; *) exit ;; esacdoneconn_expect.sh ${a_info[0]} ${a_info[1]} ${a_info[2]} |
쉘 스크립트을 실행하면 저장된 호스트 명이 출력된다. 접속하고자 하는 호스트 명의 번호를 입력하면 다른 호스트에 자동으로 접속할 수 있다.
1 2 3 4 5 |
# conn.sh1) host12) host23) host3:1 |
'Programming > Shell' 카테고리의 다른 글
| 쿼리 결과를 쉘 변수에 할당 (0) | 2012.04.26 |
|---|---|
| DDL 스크립트 생성 (0) | 2012.04.26 |
| 쿼리 주석 제거 (0) | 2012.04.25 |
| 쿼리 수행 결과 가공 (0) | 2012.04.16 |
| 요일 조회 (0) | 2012.04.15 |

