2017-10-11 6 views
0

cscript // Nologo "% FILEPATH % \ GetSys.vbs"> % PCKANRI % \ sysinf.txt로 이미 작성된 코드가 있습니다..bat 파일에서 VBScript로 인수 전달

어떻게 하나의 인수를 추가하고 GetSys.vbs으로 전달합니까? %PCKANRI%의 값을 전달하고 싶습니다.

내가 시도 -

cscript //Nologo "%FILEPATH%\GetSys.vbs" >%PCKANRI%\sysinf.txt %PCKANRI% 

및 그러나

cscript //Nologo "%FILEPATH%\GetSys.vbs" %PCKANRI% >%PCKANRI%\sysinf.txt 

, 모두 작동하지 않습니다를.

GetSys.vbs에 나는

Dim arg1 
arg1 = args.Item(0) 
MsgBox arg1 

내가 빈 메시지 NOx를 얻을 수 있습니다.

답변

1

당신은 args를 초기화하고 누락 된 인수를 처리해야합니다

type getsys.vbs 
Dim args : Set args = WScript.Arguments 
Dim arg1 
If 1 <= args.Count Then 
    arg1 = args(0) 
Else 
    arg1 = "No arguments!" 
End If 
WScript.Echo arg1 

cscript getsys.vbs 
No arguments! 

cscript getsys.vbs argument 
argument 

그리고 :

후 파일 스펙 (... >%PCKANRI%\sysinf.txt %PCKANRI%)를 추가 인수 퍼팅이 잘못

죄송합니다, 내 실수 . 끝 부분에 논쟁을 올리면 '작동'합니다. 증거 :

cscript getsys.vbs argument > getsys.txt 

type getsys.txt 
argument 

cscript getsys.vbs > getsys.txt option 

type getsys.txt 
option 
+0

감사합니다. 그것은 효과가있다! –