递归查询文件名.vbs

来源:互联网 发布:如何当一个网络写手 编辑:程序博客网 时间:2024/06/05 19:47

 递归查询文件名.vbs

'======================================================================================'dim ws,fso,f,fd,files,tmpname,url,result,preFixset ws=createobject("wscript.shell") set fso = CreateObject("Scripting.FileSystemObject") set fd = fso.getfolder(ws.currentdirectory) set files=fd.files '生成前缀result=ws.currentdirectoryresult =replace(result ,"\","+")result =replace(result ,".","_")result =replace(result ,":","=")'建立一个文本,存储文件的名字result= result & "_" & "fileinfos.txt"set resultFile=fso.createtextfile(result,2,ture)'开始工作s=ShowFolderList(ws.currentdirectory,resultFile)MsgBox "操作完成!文件信息保存于:" & result'============================================================================='--------------------------------------------'遍历一个路径下的所有文件及文件夹'参数:folderspec 表示文件路径 例如:d:\javascript'---------------------------------------------Function ShowFolderList(folderspec,logFile)Dim fso, f, f1, fc, sSet fso = CreateObject("Scripting.FileSystemObject")If Not fso.FolderExists(folderspec) Then   '判断文件夹是否存在s="文件夹不存在"elseSet f = fso.GetFolder(folderspec) '返回与指定的路径中某文件夹相应的 Folder对象Set fc = f.filesFor Each f1 in fc  s=s & chr(34) & folderspec & "\" & f1.name  & chr(34)& vbCrlogFile.writeline chr(34) & folderspec & "\" & f1.name  & chr(34)NextSet ff=f.SubFoldersFor Each f2 in ff  s=s&ShowFolderList(f2.Path,logFile) '递归所有子文件夹里的文件NextIf b="" Then a="    "End If ShowFolderList = sEnd Function


网上样例: VBS递归文件夹里的所有文件.vbs

Dim aa="" '空格'-------------------------'作者:菜菜 'QQ:544795916'遍历所有磁盘及所有文件及文件夹'---------------------------Function ShowDriveList()Dim fso, d, dc, s, nSet fso = CreateObject("Scripting.FileSystemObject")Set dc = fso.Drives '回由本地机器上所有 Drive 对象组成的 Drives 集合For Each d in dcs = s & d.DriveLetter & " :<br>"s=s&"-----驱动类型:"Select Case d.DriveTypeCase 0:s =s& "未知<br>"Case 1:s =s& "可移动<br>"Case 2:s =s& "固定<br>"Case 3:s =s& "网络<br>"Case 4:s =s& "CD-ROM<br>"Case 5:s =s& "RAM 磁盘<br>"End select If d.IsReady Then      s = s & "-----总容量:" & FormatNumber(d.TotalSize/(1024*1024), 0) & "M<br>"s = s & vbCrLfs = s & "-----可用空间:" & FormatNumber(d.AvailableSpace/(1024*1024), 0) & "M<br>"s=s&"-----文件<br>"s=s&ShowFolderList(d.DriveLetter&":\")&"<br>"End If s = s &"<hr>" NextShowDriveList = sEnd Function'--------------------------------------------'遍历一个路径下的所有文件及文件夹'参数:folderspec 表示文件路径 例如:d:\javascript'---------------------------------------------Function ShowFolderList(folderspec)Dim fso, f, f1, fc, sSet fso = CreateObject("Scripting.FileSystemObject")If Not fso.FolderExists(folderspec) Then   '判断文件夹是否存在s="文件夹不存在"elseSet f = fso.GetFolder(folderspec) '返回与指定的路径中某文件夹相应的 Folder对象Set fc = f.filesa=a&"    "For Each f1 in fc  s = s &a&f1.name&" 文件大小:"&f1.Size s = s & "<BR>"NextSet ff=f.SubFoldersFor Each f2 in ff  b=f2.names = s &a&f2.name&" 文件大小:"&f2.Size s = s & "<BR>"     s=s&ShowFolderList(f2.Path) '递归所有子文件夹里的文件NextIf b="" Then a="    "End If ShowFolderList = sEnd Function   'Document.write ShowDriveList()       '遍历系统所有文件   document.write ShowFolderList("D:\javascript") '遍历路径下的所有文件


 

 

原创粉丝点击