아래의 스크립트를 사용하여 모든 특정 파일을 대상 폴더로 이동합니다. 중복되지 않고 대상 폴더에 파일을 복사하고 싶습니다.중복되지 않고 jpg 파일 만 폴더와 하위 폴더에서 다른 폴더로 이동
VBS를 10 분마다 실행하도록 예약 했으므로 이미 폴더에있는 동일한 파일을 다시 복사해서는 안됩니다.
Set fso = CreateObject("Scripting.FileSystemObject")
testfolder = "D:\env"
'fso.CreateFolder(testfolder)
MoveFiles fso.GetFolder("D:\Movie Keys\License\2013_Apr_19")
Sub MoveFiles(fldr)
For Each f In fldr.Files
basename = fso.GetBaseName(f)
extension = fso.GetExtensionName(f)
If LCase(extension) = "env" Then
dest = fso.BuildPath(testfolder, f.Name)
count = 0
Do While fso.FileExists(dest)
count = count + 1
dest = fso.BuildPath(testfolder, basename & "_" & count & "." _
& extension)
Loop
f.Move dest
End If
Next
For Each sf In fldr.SubFolders
MoveFiles sf
Next
End Sub
이 대상 폴더와 동일한 폴더 구조를 유지하는 것, 또는 하나의 대상 폴더에 모든 소스 폴더/하위 폴더를 복사 할 수 있습니까? – Dave
그리고 모든 파일을 동일한 대상 폴더로 이동해야한다면 기존 파일을 보존하거나 덮어 써야합니까? –
대상 폴더가 동일하게 유지되고 대상 폴더에 파일 형식 *. * env 만 복사하려고합니다. 그러나 원본 폴더에는 스크립트가 모든 *. * env 파일과 프로세스를 찾아야하므로 많은 하위 폴더가 포함됩니다. 그리고 이미 파일이 대상에 존재한다면 기존 파일을 복사해서는 안됩니다. 기존 파일 만 복사해야하며 기존 파일은 변경된 내용과 동일하게 유지해야합니다. – kumar