VBscript将文件从一个目录移动到另一个目录

时间:2013-01-15 16:22:42

标签: vbscript

我是VBscript的新手,想要将一定数量的文件从一个目录移动到另一个目录。

现在我目前有一组3个文件(用于测试目的)具有不同的扩展名,并且如果源目录中有3个文件(不多也不少),则希望移动所有文件。到目前为止我的代码是:

Set fso=CreateObject("Scripting.FileSystemObject")

Set fldr=fso.getFolder("C:\folderA)
for each file in fldr.files
    If fldr.files < 3 then
            msgbox("Need more files")
    Else
            fso.MoveFile "C:\folderA\*", "C:\folderB"
    End If

非常感谢任何帮助。 感谢

3 个答案:

答案 0 :(得分:3)

  1. 使用fso.getFolder("C:\folderA").Files.Count获取号码 C:\folderA中的文件。
  2. 执行之前 - 不在 - 文件循环(移动文件)
  3. 如果文件夹包含正好3个文件
  4. ,请考虑移动(并重新创建)该文件夹

答案 1 :(得分:1)

Set FSO=CreateObject("Scripting.FileSystemObject")
Set fldr= FSO.GetFolder("C:\FolderA")
Set Collec_Files= fldr.Files
For Each File in Collec_Files
    If Collec_Files.count < 3 then
      msgbox("Need more files")
    Else
      FSO.MoveFile "C:\FolderA\*", "C:\FolderB"
    End If
Next

答案 2 :(得分:0)

我做了以下代码,它工作得很好。它正在移动其他 3 个不同的文件夹,查看它的文件名并输入。

Dim fs
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFolder(rootDir)
For each file in f.files
    filename = folderName & file.name

    extFile = right(file.Name, 4) 'gets the file extension .xls

    strExport = left(file.Name,6)  

    strExportAPI = left(file.Name, 3)

    Do

        If (extFile <> ".vbs") Then 
        
            strsub = "KeyWord"
            index = InStr(file.name, strsub)
        
        End If  
                    
        If (strExportAPI = "Value") Then 
            fs.CopyFile file, dirKeyWord&file.name
            fs.MoveFile file, dirKeyWord&file.name
            Exit Do             
        End if
    
        If (index > 0) Then
            fs.CopyFile file, dirKeyWord&file.name
            fs.MoveFile file, dirKeyWord&file.name
            Exit Do
        End If
    
    
        Do while (strExport = "export")
            fs.MoveFile file, dirKey3&file.name
            Exit Do 
        Loop            
    Loop While False
Next