我有很多文件,确切地说是 2TB,必须按创建者、创建日期和其他文件属性来查找/搜索文件。
您认为进行此类搜索的最佳方法是什么?
应用程序/Powershell?代码片段?有什么建议吗?
答案1
如果您熟悉 VBScript,那么编写搜索文件的脚本并不难。与使用内置工具相比,这种方法可能很耗时,但它提供了很大的灵活性,因为您可以调整脚本以使用您想要的任何标准。
那么类似这样的情况怎么样:
' **********************************************************************
' FindAllFiles.vbs
' ================
' Demo file find script
' **********************************************************************
option explicit
const top_folder_name = "C:\temp"
dim fso, top_folder
set fso = CreateObject("Scripting.FileSystemObject")
wl "Searching for folders in " & top_folder_name
set top_folder = fso.GetFolder(top_folder_name)
FindAllFiles top_folder
' *** Finished
wscript.quit 0
' **********************************************************************
' FindAllFiles
' ------------
' **********************************************************************
sub FindAllFiles(faf_Folder)
dim cur_folder, cur_file
' *** Check all subfolders of the current folder
for each cur_folder in faf_Folder.SubFolders
FindAllFiles cur_folder
next
' *** Now get all files in this folder
for each cur_file in faf_Folder.Files
' Do your checks on name, date, attributes or whatever here
wl cur_file.Path & "\" & cur_file.Name
next
' *** All finished
end sub
' **********************************************************************
' wl
' --
' **********************************************************************
sub wl(s)
wscript.echo s
end sub
約翰·倫尼
答案2
2BrightSparks 的 FindOnClick 通常相当不错满足您的需求,但遗憾的是它似乎没有列出 Creator。不过,它非常可定制,值得一看。提供 30 天免费试用。
答案3
文件数数比文件更重要尺寸在这种情况下。
我有一个应用程序,其中 30GB 的数据大约是 1600 万个文件。当我们将其迁移到新 NAS 时,三台机器花了 18 个小时才处理完元数据操作。
几个月后,我们移动了另外 850GB 的数据,由于平均文件大小大约大一百倍,单台机器能够以~1GB/分钟的速度在 NAS 之间进行复制。
也许像 Google Desktop 或类似的东西可能有足够的数据。
答案4
尝试一下 AgentRansack。过去事实证明它对我来说相当快(但在 GB 上,而不是 TB)