2016-07-14 3 views
0

끝에 추가 문자가있는 배치 파일을 실행하고 싶습니다. 내가 작성하는 경우는 직접 "c:\Users\Public\Uploader\"에 변경 디렉토리처럼, 그것은 작동하고 cmd를 다음과 같은 쓰기 : 다음 스크립트가 작동하지 않기 때문에 내가 VBScript로를 작성하는 방법을 모르는 start.bat "cmd:file.import c:\Users\tom\Desktop\a.xml"매개 변수가있는 배치 파일 실행

:

Dim WshShell 
Set WshShell = WScript.CreateObject("WScript.Shell") 
WshShell.CurrentDirectory="C:\Users\Public\Uploader\" 
WshShell.Run "start.bat" & "cmd:file.import C:\Users\tom\Desktop\a.xml" 

a.xml은 폴더의 마지막 수정 된 파일을 기반으로 동적으로 변경해야합니다. 도움을 주셔서 감사합니다.

+1

[지금까지 시도한 것이 무엇입니까?] (http://whathaveyoutried.com)? 또한 start.bat와 매개 변수 사이에는 공백이 없습니다. – ManoDestra

+1

당신은 @ManoDestra의 권리와 좋은 자리를 가졌습니다. 문제를 해결하고 명령을 빌드하고 실행하기 전에 에코 문자열을 사용하여 정확한 명령을 작성하는 것이 더 쉽습니다. 때로는 눈앞에서 그것을 보면서 누락 된 공백이나 따옴표를 쉽게 알아낼 수 있습니다. – dbmitch

답변

0

명령 프롬프트에서 수행중인 작업을 복제하려는 경우 배치 파일 이름과 인수 사이에 공백을 추가해야합니다. 따옴표도 추가해야합니다.

Dim WshShell 
Set WshShell = WScript.CreateObject("WScript.Shell") 
WshShell.CurrentDirectory="C:\Users\Public\Uploader\" 
WshShell.Run "start.bat " & chr(34) & "cmd:file.import C:\Users\tom\Desktop\a.xml" & chr(34) 
관련 문제