0
저는 현재 실제로 필요한 작업을 수행하는 vbscript를 호출하는 배치 파일을 가지고 있습니다. 배치 파일을 만드는 데 아무런 경험이 없습니다. 인터넷에이 코드가 있습니다.경로의 파일이 VB 스크립트의 특정 유형인지 확인하는 방법은 무엇입니까?
내가 기본적으로 VB 스크립트에서 일어날 원하는 것은, 내가 경로를 제공하고 특정 파일 (CSV 또는 XML 중)이 존재하는 경우 코드를 확인합니다. 이러한 파일이 있으면 zip 파일에 저장됩니다.
VB 스크립트에서 현재 무슨 일이 일어나고 있습니까? vbscript는 제공된 경로의 모든 파일을 가져오고 모든 파일을 하나의 파일로 압축합니다. 이 코드를 변경하여 예를 들어 CSV 인 파일 만 압축합니다.
배치 코드
CScript czip.vbs "C:\Users\donatoma\Documents\Folder1\" "C:\Users\donatoma\Documents\Folder2\CSV files.zip"
VB 스크립트
'Get command-line arguments.
Set objArgs = WScript.Arguments
InputFolder = objArgs(0)
ZipFile = objArgs(1)
'Create empty ZIP file.
CreateObject("Scripting.FileSystemObject").CreateTextFile(ZipFile, True).Write "PK" & Chr(5) & Chr(6) & String(18, vbNullChar)
Set objShell = CreateObject("Shell.Application")
Set source = objShell.NameSpace(InputFolder).Items <-- GET CSV FILES, ADD TO AN ARRAY
objShell.NameSpace(ZipFile).CopyHere(source)
'Required!
wScript.Sleep 2000
업데이트 된 코드
Set objArgs = WScript.Arguments
InputFolder = objArgs(0)
ZipFile = objArgs(1)
'Create empty ZIP file.
CreateObject("Scripting.FileSystemObject").CreateTextFile(ZipFile, True).Write "PK" & Chr(5) & Chr(6) & String(18, vbNullChar)
Set objShell = CreateObject("Shell.Application")
Set source = objShell.NameSpace(InputFolder).Items
For i = 0 to source.Count - 1
If InStr(".csv", Right(source.item(i).Name, 4)) > 0 Then
objshell.Namespace(ZipFile).CopyHere (source.item(i))
End If
Next
나는 코드를 시도했지만 아무 일도 발생하지 않았습니다. 그냥 방금 전에 사용했던 코드를 게시하겠습니다. – oopsiee
루프에 수면을 추가해야 할 것 같네요. – Fionnuala
정확히 어디입니까? ** 잠은 ** 무엇을합니까? – oopsiee