VBScript에서 PuTTY를 통해 현재 디렉터리를 변경할 때 포트 번호가 유효하지 않습니다.

VBScript에서 PuTTY를 통해 현재 디렉터리를 변경할 때 포트 번호가 유효하지 않습니다.

퍼티를 통해 UNIX 서버에 연결하기 위해 QTP에서 VB 스크립트를 사용하고 있습니다. 현재 디렉터리의 모든 파일을 나열해야 하는데 다음 스크립트를 실행할 때 "잘못된 포트 번호" 오류가 나타납니다.

Set p_oWShell= CreateObject( "WScript.Shell" )
unix_cmd=" cd /home/SHOME/batch"
lscmd = " ls /home/SHOME/batch"
Set oSession = oWShell.exec( puttyLOC & " " & sHost & " -l " & sUser & " -pw " & sPasswd & unix_cmd)

또는

Set oSession = oWShell.exec( puttyLOC & " " & sHost & " -l " & sUser & " -pw " & sPasswd & lscmd )

또한 로컬 Windows 컴퓨터에서 Unix 서버로 또는 그 반대로 파일을 업로드해야 합니다.

참고: 다음 코드를 테스트했는데 문제 없이 서버에 연결되었습니다.

Set oSession = oWShell.exec( puttyLOC & " " & sHost & " -l " & sUser & " -pw " & sPasswd)

답변1

Putty 구문에서는 동일한 라인에 원격 명령을 지정할 수 없습니다.

이 문제를 해결하는 데는 두 가지 가능한 옵션이 있습니다.

  1. Putty 대신 plink.exe를 사용하세요.

P:\ath\to\plink user@host command

  1. 명령을 파일에 넣고 -m 스위치를 사용하십시오.

P:\ath\to\putty user@host -m p:\ath\to\file

Windows 상자에서 Unix로 파일을 전송하려면 구문이 유사한 pscp.exe 유틸리티를 사용할 수 있습니다.

pscp "P:\ath\to\file.txt" user@host:/destination/dir/

plink.exe 및 pscp.exe는 putty 패키지에 포함된 유틸리티이므로 예제에서는 비밀번호 옵션을 생략했습니다.

관련 정보