Vbscript 将特定类型的文件移动到指定文件夹的脚本

Vbscript 将特定类型的文件移动到指定文件夹的脚本,vbscript,scripting,file-type,Vbscript,Scripting,File Type,我正在制作一个脚本,将特定类型的文件从p:\上的文件夹及其子文件夹移动到创建的文件夹p:\move或delete,这样用户可以在删除文件之前查看所有文件 即使他们的p:\上没有任何指定的文件类型,它也需要工作,因为大约有110人都有自己的p:\ 我需要移动的文件类型有:mkv,bmp,img,jpg,ps,spiff,dib,jfif,pcx,psd,tif,eps,eps,png,,,jpeg,aif,aiff,asf,asx,au,avi,flac,m3u,midi,mov,mp1,,mp2

我正在制作一个脚本,将特定类型的文件从
p:\
上的文件夹及其子文件夹移动到创建的文件夹
p:\move或delete
,这样用户可以在删除文件之前查看所有文件

即使他们的
p:\
上没有任何指定的文件类型,它也需要工作,因为大约有110人都有自己的
p:\

我需要移动的文件类型有:
mkv
bmp
img
jpg
ps
spiff
dib
jfif
pcx
psd
tif
eps
eps
png
jpeg
aif
aiff
asf
asx
au
avi
flac
m3u
midi
mov
mp1
mp2
mp3
mpeg2
mpeg3
mpg
ogg
qt
qtw
ram
rm
rmi
mvb
snd
swf
vob
wav
wav
WAW

以下是我目前掌握的情况:

' Create Folder
Dim oFSO
Set oFSO = CreateObject("Scripting.FileSystemObject")

' Create a new folder
oFSO.CreateFolder "P:\Move or delete"
下一步是什么?

您需要代码和检查来验证文件是否符合您的条件。后者最好用字典来完成:

Set extensions = CreateObject("Scripting.Dictionary")
extensions.CompareMode = vbTextCompare  'case-insensitive
extensions.Add "mkv", True
extensions.Add "bmp", True
extensions.Add "img", True
...
这样,只要查找扩展名并移动文件(如果有匹配项):

For Each f In fldr.Files
  If extensions.Exists(fso.GetExtensionName(f)) Then
    f.Move "P:\Move or delete\"  '<-- note the trailing backslash!
  End If
Next
fldr.文件中每个f的

如果extensions.Exists(fso.GetExtensionName(f))则
f、 移动“P:\移动或删除\”