AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / computer / 问题 / 1802924
Accepted
questionto42
questionto42
Asked: 2023-08-07 19:11:52 +0800 CST2023-08-07 19:11:52 +0800 CST 2023-08-07 19:11:52 +0800 CST

如何在一个巨大的文件夹中仅搜索一年中选定月份的文件?

  • 772

我有一个文件夹,其中包含 30 GB 的媒体文件。按“日期”对它们进行排序以将它们拆分到“年_月”的新文件夹中需要花费几个小时。如何在大量文件列表中仅搜索/过滤出一年中选定的月份?

回复答题者

回复添加库的答案:

从在文件资源管理器中显示库:

要在文件资源管理器中显示库,请选择“视图”选项卡,然后选择“导航窗格”>“显示库”。

如果我白天在图书馆安排:

在此输入图像描述

我在图书馆的“Datum”列中仅看到相同的日期 05.08.2023:

在此输入图像描述

但我发现这也是备份文件夹中已有的相同错误日期,因此,库不可能比数据中的更好:

在此输入图像描述

即使我有来自 Ask Different Stack Exchange 的旧屏幕截图,为什么我必须多次重试复制并出现许多错误才能将 GB 的图像和视频文件从 iPhone 7 移动到 Windows PC?(这让我在这里问这个问题)

您可以看到 HEIC 数据中还有其他日期:

在此输入图像描述

但如果我现在检查相同的数据,您会发现我无法再在文件列表中获取 HEIC 图像,可能是因为我将它们移动到了正确的月份。无论如何,如果那里只有 05.08.2023,库中也只能显示这个日期,如果 HEIC 文件丢失,那是我的错

虽然 Windows 上显示的 iPhone 文件夹中的“Datum”列包含真实日期,但请再次查看相同的文件:

在此输入图像描述

这意味着备份已覆盖日期,并且通过选择“按月排列”进行快速索引排序的库技巧应该有效。这就是我接受它的原因。

windows
  • 2 2 个回答
  • 95 Views

2 个回答

  • Voted
  1. questionto42
    2023-08-07T19:11:52+08:002023-08-07T19:11:52+08:00

    使用 [field:month Year] 模式搜索(仅适用于小样本)

    打开包含要过滤掉的文件的文件夹。在右上角的搜索框中,使用以下模式输入您的系统语言:

    [column name]:[month in letters] [year]

    德语示例:

    • 2023 年 1 月 / 2023 年 1 月
    • 2023 年 2 月 / 2023 年 2 月
    • 三月 2023
    • 2023 年 4 月 / 2023 年 4 月
    • ...

    使:

    在此输入图像描述

    在搜索菜单中,您可以找到更多模式,例如本月、上个月等,如果单击它们,您还将在搜索框中看到它们的代码,准备进一步调整:

    在此输入图像描述

    这样您就可以单击“änderungsdatum:letzten Monat”,这是上个月的“更改日期”(意味着不是过去一个月,而是最后一个日历月):

    在此输入图像描述

    由于我需要它用于除“更改日期”之外的另一个字段/列,因此我可以将其更改为“数据”列:

    在此输入图像描述

    这似乎不适用于大型文件列表

    奇怪的是,这似乎不适用于所有文件,因为我对“2023 年 8 月”的过滤器及其移至“202308”文件夹的输出如下所示:

    在此输入图像描述

    从该屏幕截图的几个示例图像可以看出,我仍然找到了其他月份的其他图像,事实证明这些都是HEIC和一些 JPG 图像(12000 张中的 11500 张)。再次在这个“202308”文件夹中进行过滤,我只得到“2023年8月”图像,因此,过滤器以某种方式在搜索输出中起作用,因此当将巨大且可能未完全加载的搜索输出移动到新的时,它可能不起作用文件夹?!
    然后我想,当我不按 时,我可能只会捕获“datum:aug 2023”文件Ctrl+A,但在搜索输出中标记第一个到最后一个文件,然后才移动它们。但在测试中,当仅标记搜索输出的过滤文件时,标记的文件数量与整个文件夹中的文件数量相同,因此,该文件夹中的所有文件,即使其搜索输出必须包含较少的文件(因为我确信并非所有文件都是“2023 年 8 月”)。遗憾的是,这意味着搜索过滤器不能用于将所选月份与其他月份分开。因此,这个答案对于大文件夹来说是不够的,它只适用于较小的文件夹。
    我继续过滤掉其他月份并将它们移动到自己的year_month文件夹中,但由于我在“202308”文件夹中拥有所有HEIC文件,所以我没有找到任何HEIC图像。过滤器只找到了一些 MOV 和 JPG 文件:

    在此输入图像描述

    我仍然继续至少移动那些可以找到的文件,以便大文件夹的大小至少缩小一点。现在,我仍然需要按“数据”对剩余的 11500 个文件进行排序,这将需要几个小时。奇怪的错误。

    因此,我仍然没有找到一种方法从这个大文件列表中过滤掉那几个月的 HEIC 和其他图像,一个文件夹中的约 12000 个文件中仍然有约 11500 个 HEIC/PNG/JPG 图像。

    按文件名分割

    由于我有一个文件夹,其中所有 iPhone 的每月文件夹都合并了名称中的许多重复项,因此我最终将每个带有“(2)”的文件移动到一个新文件夹,并继续使用其他标记因此,按照名称开始分割,然后按日期列对较小的样本(然后只有 1300 个文件)进行排序:

    在此输入图像描述

    这很有效,排序不再需要很长时间,然后我可以将这些文件拆分到每月的子文件夹中。

    将 1000-2000 个文件的较小样本移动到另一个文件夹

    但是,如果您没有类似名称之类的信息来实现此目的,则处理此问题的唯一方法是对数千个或更多文件进行随机采样,按日期对它们进行排序,将它们拆分到文件夹中,然后继续下一个样本。这就是我最终得到的结果,也许人们应该已经开始这样做了,因为它很快就完成了,即使您必须将文件移动到每月文件夹中数十次。至少,计算机可以处理它。

    对其进行编程

    我已经在Python中处理过很多次文件,并且使用pathlib库,应该很容易读取“数据”并将其移动到year_month文件夹,而无需手动执行任何操作。我没有花时间,但应该是比将文件数百次移动到正确的每月文件夹中更好的方法。

    • 2
  2. Best Answer
    Keith Miller
    2023-08-08T07:00:15+08:002023-08-08T07:00:15+08:00

    如果该文件夹已建立索引,您可以从该文件夹创建一个新库。尽管许多人忽略了库,但它们提供了Arrange by >后台上下文菜单的功能,这些功能通常提供您需要的所有搜索功能。

    不同的库类型或模板提供不同的Arrange by >选项。根据您的需要,即使您的文件是媒体,也可以使用Pictures它提供的模板Month,并显示每个月/年组的“堆栈”(虚拟文件夹),如以下屏幕截图所示:

    在此输入图像描述

    然后,要复制/移动文件,请双击堆栈将其打开,ctrl+A选择全部,然后根据需要复制/移动。


    编辑:Arrange by >选项因库类型而异,与文件夹类型类似。如果您没有看到选项:

    • Month
    • Day
    • Rating
    • Tag 那么您的库没有针对图片进行优化。这可以通过库的Properties对话框进行更改:

    在此输入图像描述

    如果正如我怀疑的那样,这应该对您有用,Datum相当于Date英语版本的Explorer中的列。这是一个相当独特的属性,因为它既不是文件系统属性,也不是存储在文件中的 Exif 元数据,而是由文件类型以及文件中是否存在此类元数据确定的动态属性Date Taken。请参阅我的回答以了解更多信息。正如该答案中的链接文档所示,完整的属性名称是,这与库优化用于按月堆叠的System.ItemDate属性相同:Pictues

    在此输入图像描述



    编辑:故障排除


    将此代码复制并粘贴到PowerShell窗口中,以返回在一个或多个打开的资源管理器窗口中选择作为排序列的属性的规范名称:

    @((New-Object -Com shell.application).Windows()).ForEach{ Echo ('{0}Window Title   :{1,30}{0}Sort Column(s) :{2,30}{0}' -f "`n`t", $_.LocationName, $_.Document.SortColumns)}
    

    输出:

    PS C:\> @((New-Object -Com shell.application).Windows()).ForEach{ Echo ('{0}Window Title   :{1,30}{0}Sort Column(s) :{2,30}{0}' -f "`n`t", $_.LocationName, $_.Document.SortColumns)}
    
            Window Title   :                      Pictures
            Sort Column(s) :        prop:-System.ItemDate;
    
    PS C:\>
    

    执行图片文件夹中的代码,然后导航到图库后再次执行。属性一样吗???

    • 1

相关问题

  • 如何在 Windows Precision 触摸板上禁用鼠标加速?

  • 批量重命名图像文件集

  • Python 的“pass”参数的批处理等价物是什么?

  • 在 Windows 上与 Docker 守护进程通信

  • 资源管理器侧面板中的桌面外壳快捷方式

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何减少“vmmem”进程的消耗?

    • 11 个回答
  • Marko Smith

    从 Microsoft Stream 下载视频

    • 4 个回答
  • Marko Smith

    Google Chrome DevTools 无法解析 SourceMap:chrome-extension

    • 6 个回答
  • Marko Smith

    Windows 照片查看器因为内存不足而无法运行?

    • 5 个回答
  • Marko Smith

    支持结束后如何激活 WindowsXP?

    • 6 个回答
  • Marko Smith

    远程桌面间歇性冻结

    • 7 个回答
  • Marko Smith

    子网掩码 /32 是什么意思?

    • 6 个回答
  • Marko Smith

    鼠标指针在 Windows 中按下的箭头键上移动?

    • 1 个回答
  • Marko Smith

    VirtualBox 无法以 VERR_NEM_VM_CREATE_FAILED 启动

    • 8 个回答
  • Marko Smith

    应用程序不会出现在 MacBook 的摄像头和麦克风隐私设置中

    • 5 个回答
  • Martin Hope
    Vickel Firefox 不再允许粘贴到 WhatsApp 网页中? 2023-08-18 05:04:35 +0800 CST
  • Martin Hope
    Saaru Lindestøkke 为什么使用 Python 的 tar 库时 tar.xz 文件比 macOS tar 小 15 倍? 2021-03-14 09:37:48 +0800 CST
  • Martin Hope
    CiaranWelsh 如何减少“vmmem”进程的消耗? 2020-06-10 02:06:58 +0800 CST
  • Martin Hope
    Jim Windows 10 搜索未加载,显示空白窗口 2020-02-06 03:28:26 +0800 CST
  • Martin Hope
    andre_ss6 远程桌面间歇性冻结 2019-09-11 12:56:40 +0800 CST
  • Martin Hope
    Riley Carney 为什么在 URL 后面加一个点会删除登录信息? 2019-08-06 10:59:24 +0800 CST
  • Martin Hope
    zdimension 鼠标指针在 Windows 中按下的箭头键上移动? 2019-08-04 06:39:57 +0800 CST
  • Martin Hope
    jonsca 我所有的 Firefox 附加组件突然被禁用了,我该如何重新启用它们? 2019-05-04 17:58:52 +0800 CST
  • Martin Hope
    MCK 是否可以使用文本创建二维码? 2019-04-02 06:32:14 +0800 CST
  • Martin Hope
    SoniEx2 更改 git init 默认分支名称 2019-04-01 06:16:56 +0800 CST

热门标签

windows-10 linux windows microsoft-excel networking ubuntu worksheet-function bash command-line hard-drive

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve