VBS肿么获取某目录下的文件列表
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
dim FileName,fs,foldername foldername = InputBox( "请输入想要在哪个文件夹查找" , "VBS查找文件" ) If foldername = "" Then wscript.quit End If Set fs = CreateObject( "scripting.filesystemobject" ) digui (foldername) '调用递归函数进行查找 msgbox FileName '结果显示 '下面是递归查找函数 Function digui(path) Set folder = fs.getfolder(path) Set subfolders = folder.subfolders Set Files = folder.Files For Each i In Files FileName=FileName & i.path & vbNewLine '找到则追加到变量FileName中 Next For Each j In subfolders digui (j.path) '递归查找子目录 Next End Function |
'目录列表与上述相似,稍加修改即可。
vbs获取目录下的文件和文件夹集合
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
Dim sFolder, sExt, message sFolder = "F:\Programming\Applications\VBScript" Dim fs, oFolder, oFiles, oSubFolders set fs = CreateObject( "Scripting.FileSystemObject" ) set oFolder = fs.GetFolder(sFolder) '获取文件夹 set oSubFolders = oFolder.SubFolders '获取子目录集合 for each folder in oSubFolders message = "文件夹:" & folder MsgBox message Next set oFiles = oFolder.Files '获取文件集合 for each file in oFiles sExt = fs.GetExtensionName(file) '获取文件扩展名 sExt = LCase(sExt) '转换成小写 message = "文件名:" & file.Name & ", 扩展名:" & sExt '获得文件名(含扩展名,不含路径)和扩展名 MsgBox message Next |
充,上面的folder.Name可以得到文件夹的名称(不含路径)
如:folder = F:\Programming\Applications\VBScript\dd
通过folder.Name可以得到"dd"
批量统计子目录文件数量
1
2
3
4
5
6
7
|
@echo off&setlocal enabledelayedexpansion cd.>dirfiles.txt for /d %%a in (*.*) do ( set n=0 for /f %%B in ( 'dir /a-d /b /s "%%a"') do set /a n+=1 echo %%a !n! >>dirfiles.txt ) |
具体的大家可以凑凑