有没有一种方法可以使用vbs将驱动器中的每个文件和文件夹移动到驱动器本身的文件夹中



我需要VBS中的一个程序(我也可以使用批处理,但VBS会更好(,它可以获取USB驱动器中的所有文件和文件夹,并在USB中的文件夹中移动。示例:如果在我的USB驱动器中有以下目录:

E:folder1file.txt
E:folder2foder3file3.txt
E:file.txt

运行程序后,将有以下路径:

E:newfolderfolder1file.txt
E:newfolderfolder2foder3file3.txt
E:newfolderfile.txt

我不知道这是否可能。我已经制作了一个使用的循环程序,但它只适用于文件而不适用于文件夹:

Set FSO = CreateObject("Scripting.FileSystemObject")
ShowSubfolders FSO.GetFolder("E:/")
Sub ShowSubFolders(Folder)
set fs = CreateObject("Scripting.FileSystemObject")
For Each Subfolder in Folder.SubFolders
fs.movefolder Subfolder.Path , "E:newfolder"
next
End Sub
With CreateObject("Scripting.FileSystemObject")
.MoveFile "E:*.*", "E:newfolder"
End With

*在这段代码中,新文件夹已经存在。

您可以使用Folder对象的Move方法:

Dim sSourcePath
Dim sDestinationPath
Dim objFSO
Dim objSourceFolder
Dim objDestinationFolder
Dim objFolder
' Define paths
sSourcePath = "E:"
sDestinationPath = "E:newfolder"
' Get source and destination folder
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objSourceFolder = objFSO.GetFolder(sSourcePath)
Set objDestinationFolder = objFSO.GetFolder(sDestinationPath)
For Each objFolder In objSourceFolder.Subfolders
If objFolder Is objDestinationFolder Then
' Don't move destination folder
Else
' Move folder to destination folder
objFolder.Move sDestinationPath
End If
Next

相关内容

最新更新