스크립트가 로컬 쉘에서만 동작을 합니다. [1]

스크립트가 로컬 쉘에서만 동작을 합니다.

2017-09-15 11:48 - 진형수
안녕하세요.

스크립트를 작성해서
A서버 -> B서버 -> C서버 로 telnet으로 접속하는 스크립트를 만들려고 합니다.
- A서버는 xsh.Session.Open으로 접속을 합니다.
- B서버부터는 xsh.Screen.Send를 통해서 telnet ip와 id/pw를 전송하여 접속합니다.

1. 일반 탭(로컬쉘이 아닌 다른 원격접속 탭) 에서 스크립트 실행을 하면 Session.Open이기 때문에 새 창이 뜹니다.
그 후xsh.Screen.Send를 통해 telnet 접속을 해야 하지만 아무 동작을 하지 않습니다.
새 탭(로컬 쉘) 에서 스크립트를 실행하면 그 창에서 바로 A서버로 접속을 하고, B,C서버로 메세지를 전송하는(xsh.Screen.Send) 스크립트가 동작합니다.

==스크립트==
	//*** WaitForString ***
	xsh.Session.Open("D:\Xshell5\session\A.xsh");
	xsh.Screen.Synchronous = true;
	xsh.Session.Sleep(1000);

	//*** Send ***
	//xsh.Screen.WaitForString("aaa");
	xsh.Screen.Send("echo abc");
	xsh.Screen.Send(String.fromCharCode(13));
	xsh.Screen.Send("telnet B");
	xsh.Screen.Send(String.fromCharCode(13));

	xsh.Screen.WaitForString("ogin:");
xsh.Screen.Send("AAAA");
	xsh.Screen.Send(String.fromCharCode(13));

	xsh.Screen.WaitForString("assword:");
xsh.Screen.Send("BBBB");
	xsh.Screen.Send(String.fromCharCode(13));



2. 로컬 쉘에서 스크립트를 실행시 WaitForString 을 통해 login, passwd를 기다린 후 메시지 전송을 요청했지만, 정상 동작 하지 않습니다.

== 스크립트 ==
	xsh.Screen.WaitForString("ogin:");
xsh.Screen.Send("AAAA");
	xsh.Screen.Send(String.fromCharCode(13));

	xsh.Screen.WaitForString("assword:");
xsh.Screen.Send("BBBB");
	xsh.Screen.Send(String.fromCharCode(13));

==출력==
login : AAAA
BBBB passwd:
Login incorrect


3. 위와 같은 방식 외에 A서버에서 B서버에서 C서버 로 telnet으로 들어가는 xshell5의 기능이 있는지 알고싶습니다.

프로그램 버전 : Xshell 5


Re: 스크립트가 로컬 쉘에서만 동작을 합니다.

2017-09-18 14:08 - 넷사랑
안녕하십니까?
넷사랑컴퓨터 기술지원입니다.

1. 스크립트는 현재 세션에 대해서 작동합니다. 보여 주신 스크립트는 새로운 세션을 열고 나머지 동작은 현재 세션에서 진행합니다.

2. xsh.session.sleep() 함수를 적절히 사용해 보세요.
xsh.Screen.WaitForString("ogin:");
xsh.Screen.Send("AAAA");
xsh.Screen.Send(String.fromCharCode(13));

xsh.Screen.WaitForString("assword:");
xsh.session.sleep(1000);
xsh.Screen.Send("BBBB");
xsh.Screen.Send(String.fromCharCode(13))

3. 단순히 다단계 로그인을 위한 것이라면 세션 속성 내의 '로그인 스크립트' 기능을 사용해 보세요.
세션 등록 정보 -> 연결 -> 로그인 스크립트
wait(expect)와 send로 구성되어 있습니다. 암호를 포함하여야 하므로 스크립트보다는 암호 문자열 숨김 기능이 있는 르그인 스크립트 기능을 추천합니다.

감사합니다.
			


이전 조회수: 100
$