2009-12-10 6 views
11

VBS에서는 어떻게 디렉터리를 만든 다음 파일을 복사합니까?디렉터리 만들기 및 파일 복사

ID는 예를 들어 C의 루트에 폴더를 만들고 싶습니다. C : \ 폴더에 복사 한 다음 \ server \ folder \ file.ext에서 새 폴더로 파일을 복사하십시오.

답변

31

FileSystemObject 개체, 즉 CreateFolderCopyFile 개체를 사용하십시오.

Dim oFSO 
Set oFSO = CreateObject("Scripting.FileSystemObject") 

' Create a new folder 
oFSO.CreateFolder "C:\MyFolder" 

' Copy a file into the new folder 
' Note that the destination folder path must end with a path separator (\) 
oFSO.CopyFile "\\server\folder\file.ext", "C:\MyFolder\" 

당신은 또한 (CreateFolder이 경우 오류를 발생시킵니다 때문에) 이미 만들 폴더의 존재 여부를 확인 또는 지정과 같은 추가 로직을 추가 할 수 있습니다 : 기본적으로,이 스크립트가 어떻게 보일까입니다 복사중인 파일을 겹쳐 쓸지 여부. 따라서 다음과 같이 끝낼 수 있습니다.

Const strFolder = "C:\MyFolder\", strFile = "\\server\folder\file.ext" 
Const Overwrite = True 
Dim oFSO 

Set oFSO = CreateObject("Scripting.FileSystemObject") 

If Not oFSO.FolderExists(strFolder) Then 
    oFSO.CreateFolder strFolder 
End If 

oFSO.CopyFile strFile, strFolder, Overwrite 
1

이 목적으로 셸을 사용할 수 있습니다.

Set shl = CreateObject("WScript.Shell") 
shl.Run "cmd mkdir YourDir" & copy " 
관련 문제