퍼티를 통해 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 구문에서는 동일한 라인에 원격 명령을 지정할 수 없습니다.
이 문제를 해결하는 데는 두 가지 가능한 옵션이 있습니다.
- Putty 대신 plink.exe를 사용하세요.
P:\ath\to\plink user@host command
- 명령을 파일에 넣고 -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 패키지에 포함된 유틸리티이므로 예제에서는 비밀번호 옵션을 생략했습니다.