인수를 VBScript (cscript로 시작된 VBS 파일)에 전달할 수 있습니까?
이 스크립트는 "test.vbs"에 저장되어 있습니다.
Set FSO = CreateObject("Scripting.FileSystemObject")
Set File = FSO.OpenTextFile(workFolder &"\test.txt", 2, True)
File.Write "testing"
File.Close
Set File = Nothing
Set FSO = Nothing
Set workFolder = Nothing
스크립트를 실행할 때 "workFolder"변수의 값을 전달하고 싶습니다.
어떻게 할 수 있습니까? 할 수 있습니까? 아마도 "cscript test.vbs workFolder : 'C : \ temp \'"와 같은 것입니까?
보너스 질문 : "Set workFolder = Nothing"을 사용하여 전달 된 변수를 정리해야합니까? 아니면 VBSCript가 종료 될 때 자동으로 수행합니까? "Set File = Nothing"및 "Set FSO = Nothing"도 필요하지 않을 수도 있습니다. 이 두 가지 질문에 대한 답을 알고 있으면 알려주십시오.
를 사용 WScript.Arguments
하여 스크립트에 전달 된 인수에 액세스 할 수 있습니다 .
스크립트 호출 :
cscript.exe test.vbs "C:\temp\"
스크립트 내부 :
Set File = FSO.OpenTextFile(WScript.Arguments(0) &"\test.txt", 2, True)
실제로 스크립트에 인수가 전달되었는지 확인하는 것을 잊지 마십시오. Count
속성 을 확인하여 그렇게 할 수 있습니다 .
if WScript.Arguments.Count = 0 then
WScript.Echo "Missing parameters"
end if
파일을 닫은 후 스크립트가 끝나면 변수를로 설정할 필요가 없습니다 Nothing
. 리소스는 cscript.exe 프로세스가 종료 될 때 자동으로 정리됩니다. Nothing
일반적으로 변수를로 설정하는 것은 스크립트를 실행하는 동안 명시 적으로 리소스를 해제하려는 경우에만 필요합니다. 이 경우 COM 개체에 대한 참조를 포함하는 변수를로 설정하면 Nothing
스크립트가 종료되기 전에 COM 개체가 해제됩니다. 이것은 보너스 질문에 대한 간단한 대답 일 뿐이며 다음과 같은 관련 질문에서 더 많은 정보를 찾을 수 있습니다.
VBS 내에서 매개 변수에 액세스 할 수 있습니다.
Wscript.Arguments(0)
Wscript.Arguments(1)
등등. 매개 변수 수 :
Wscript.Arguments.Count
명령 줄을 통해 전달 된 각 인수는 다음을 사용하여 액세스 할 수 있습니다. Wscript.Arguments.Item (0) 여기서 0은 인수 번호입니다 : 즉, 0, 1, 2, 3 등.
따라서 코드에서 다음을 가질 수 있습니다.
strFolder = Wscript.Arguments.Item(0)
Set FSO = CreateObject("Scripting.FileSystemObject")
Set File = FSO.OpenTextFile(strFolder, 2, True)
File.Write "testing"
File.Close
Set File = Nothing
Set FSO = Nothing
Set workFolder = Nothing
wscript.arguments.count를 사용하면 누군가가 적절한 값을 입력하지 않은 경우 오류 트랩을 수행 할 수 있습니다.
모든 Args를 얻으려면 이것을 시도하십시오.
Set Args=WSH.Arguments
For x=0 To Args.Count-1
WSH.Echo "Arg_"&x+1&" = "&Args(x)
Next
'your programing' 카테고리의 다른 글
Android ListView 새로 고침 단일 행 (0) | 2020.10.16 |
---|---|
MySQL : 필드 크기 / 길이로 정렬 (0) | 2020.10.16 |
루트가 아닌 사용자로 CPAN을 어떻게 사용할 수 있습니까? (0) | 2020.10.16 |
명령 프롬프트를 통해 휴지통을 비우는 방법은 무엇입니까? (0) | 2020.10.16 |
OS X에서 내 $ PATH 변수의 현재 값을 어떻게 볼 수 있습니까? (0) | 2020.10.16 |