쉘 프로그램으로 다른 텔넷 세션 열기
글쓴이: haomaru100 / 작성시간: 토, 2004/01/31 - 3:36오후
쉘 프로그램으로 새로운 telnet session을 열어서 remote서버에서
작업을 하고 계속해서 다른 서버를 접속해서 작업을 하려고 합니다.
FTP 처럼 telnet에서도 아래와 같은 프로그램이 가능한지 궁금합니다.
--------------------------------
telnet << EOF
open ip_address
user
passwd
ls
exit
EOF
---------------------------------
위에 입력한 내용은 ip_address에 해당하는 서버에 접속하여 ls명령어를
실행하고 종료하기 위한 스크립트입니다. 위에 있는 순서대로 shell 프롬프트
상에서 입력하면 별 문제가 없으나(EOF형태가 아닌 순서대로 명령어만 입력),
위와 같이 작성해서 쉘을 실행하면 아래와 같은 에러가 나더군요.
----------------------
telnet> 연결 중입니다. 잠시 기다리십시오...
dev51에 연결됩니다.
이탈(Escape) 문자는 '^]'입니다.
getwinsize:ioctl: 지정된 파일이 ioctl 시스템 호출을 지원하지 않습니다.
연결이 끊겼습니다.
------------------------
왜 그런지 찾아보려고 했으나 짧은 지식때문에 더 이상 실마리를 찾지 못해
고수님들의 조언을 부탁드립니다. 감사합니다.
Forums:
expectrshssh 등을 고려하시는게 좋을 듯합니다.
expect
rsh
ssh
등을 고려하시는게 좋을 듯합니다.
Perl의 Net::Telnet 모듈을 이용한 방법도 아주 좋은 방법입니
Perl의 Net::Telnet 모듈을 이용한 방법도 아주 좋은 방법입니다.
expect를 고려하지 않으신다면 이 방법을 추천합니다.
A few Good Man
ssh로 하는 것이 제일 간단하지 않을까요?ssh foo@your
ssh로 하는 것이 제일 간단하지 않을까요?
ssh foo@your.net open ip_address; user; passwd; ls
http://eunjaeim.com
위와같은 작업을 하기 위해서 유닉스 계열에서는 rsh 또는 ssh 등 r
위와같은 작업을 하기 위해서 유닉스 계열에서는 rsh 또는 ssh 등 remote 작업용 shell을 제공합니다.
이러한 shell들을 이용하시는 것이 바람직합니다.
참고로, telnet은 터미널을 열기 위한 것이지, 어떠한 작업을 리모트에서 돌리기 위한 툴은 아닙니다.
댓글 달기