VBS脚本统计桌面文件、文件夹、快捷发式的名称和路径

日常重装系统时,都需要进行桌面文件的清理和转移。

有些软件还需要重新安装。面对杂乱的桌面文件,可以使用Windows内嵌的VBS脚本进行统计文件的名称和路径。

方便重装完系统后进行查看。


VBS脚本的代码如下:

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'文件名: List Items in the Desktop Folder and Save in D:\
'功能:检索桌面上快捷方式、文件夹和文件的名称,并在D盘创建日志文件。用于重装系统的文件名称备份。
'日期: 2016年5月9日
'作者:Phoenix
'联系方式:QQ:364462079
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

ret = MsgBox ("这个小脚本能将您桌面的文件名称和路径存储在D盘的根目录下。" & vbCrLf &_
		"单击是(Yes)继续,单击否(No)退出脚本?", vbYesNo + vbInformation, "欢迎使用")
If vbNo = ret Then
     WScript.Quit
Else 

Const DESKTOP = &H10&
Const ALL_USERS_DESKTOP = &H19&

FormatCurrentDate = Year(Date())& "-" & Month(Date()) & "-" & Day(Date()) '格式化当前日期
MyDesktopFilePath = "D:\Desktop File Name and Path " & FormatCurrentDate & ".txt" '日志文件路径

FolderCount = 0
ItemCount = 0
ShortcutCount = 0

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objShell = CreateObject("Shell.Application")
set objWshShell=CreateObject("Wscript.Shell")

Set objFolder = objShell.Namespace(DESKTOP)						'用户桌面
Set objFolderItem = objFolder.Self
Set objPublicDesktopFolder = objShell.Namespace(ALL_USERS_DESKTOP) '公用桌面
Set objPublicFolderItem = objPublicDesktopFolder.Self

Set MyTxtFile = objFSO.CreateTextFile(MyDesktopFilePath, True) 

MyTxtFile.WriteLine "时间:" & Now 
MyTxtFile.WriteLine "你的桌面路径是:"
MyTxtFile.WriteLine objFolderItem.Path
MyTxtFile.WriteLine objPublicFolderItem.Path
MyTxtFile.WriteLine "统计结果:"
MyTxtFile.WriteLine "*******************************************************************"
MyTxtFile.WriteLine 	

Set colItems = objFolder.Items
For Each objItem in colItems
	GetItemInfo(objItem.Path)
Next

Set colPublicItems = objPublicDesktopFolder.Items
For Each objItem In colPublicItems
    GetItemInfo(objItem.Path)
Next 


MyTxtFile.WriteLine "*******************************************************************"
MyTxtFile.WriteLine "在您的桌面上找到了 " & ItemCount  & " 个项目。"
MyTxtFile.WriteLine "其中有快捷方式: " & ShortcutCount & "个。"
MyTxtFile.WriteLine "其中有文件夹: " & FolderCount & "个。"
MyTxtFile.WriteLine "其中有文件: " & ItemCount - FolderCount - ShortcutCount & "个。"
MyTxtFile.Close

choice = MsgBox("现在打开日志文件么?" & "文件路径是" & vbCrLf & MyDesktopFilePath, vbYesNo + vbInformation, "提示")
If choice = vbYes Then
	objWshShell.Run "notepad " & MyDesktopFilePath, 1, True
Else 
	WScript.Quit
End If 

End If

'''''''''''''''''''''''''''''''''''''''''''''''''''''
''函数名:GetItemInfo
''功能:  根据文件的信息,判断是否为文件夹,快捷方式。并统计数量。将统计的信息写入日志文件中。
''参数:  文件的路径
''''''''''''''''''''''''''''''''''''''''''''''''''''
Function GetItemInfo(itemPath)
		ItemCount = ItemCount + 1
		
	If objFSO.FolderExists(itemPath) Then
    	FolderCount = FolderCount + 1
    Else If objFSO.GetExtensionName(itemPath) = "lnk" Then
    	ShortcutCount = ShortcutCount + 1
    End If 
    End If 
    	
	MyTxtFile.WriteLine "第 " & ItemCount & " 文件" 
    MyTxtFile.WriteLine "文件名: " &  objItem.Name
    MyTxtFile.WriteLine "文件路径:" & objItem.Path
	MyTxtFile.WriteLine "---------------------------------------------------"
    MyTxtFile.WriteLine

End Function 

运行效果如下图所示:

VBS脚本统计桌面文件、文件夹、快捷发式的名称和路径_第1张图片

VBS脚本统计桌面文件、文件夹、快捷发式的名称和路径_第2张图片

日志文件:

VBS脚本统计桌面文件、文件夹、快捷发式的名称和路径_第3张图片

统计信息汇总:

VBS脚本统计桌面文件、文件夹、快捷发式的名称和路径_第4张图片

你可能感兴趣的:(VBS脚本统计桌面文件、文件夹、快捷发式的名称和路径)