【发布时间】:2018-07-25 05:06:57
【问题描述】:
我在许多子文件夹中有数千个图像文件(jpg、PNG、gif 等)。示例
images\2018\jan\baba\hello1_abc.jpg
images\2018\jan\kaka\hello6_pqr.gif
images\2016\mar\baby\hello7_abc.png
images\2018\jan\yoga\hello3_xyz.jpg
images\2018\jan\yoga\hello345_abc.bmp
等等等等
(ABC、pqr、XYZ 是一些 3 位数字,表示一些文件属性)
现在,在不影响目录结构的情况下,我想移动名称中包含 abc 的所有文件。使其按年、月、主题和“abc”“xyz”“pqr”排序。喜欢,
images\abc\2018\jan\baba\hello1_abc.jpg
images\abc\2016\mar\baby\hello7_abc.png
images\abc\2018\jan\yoga\hello345_abc.bmp
images\2018\jan\kaka\hello6_pqr.gif
images\2018\jan\yoga\hello3_xyz.jpg
现在我使用手动方法,即
- 我在“C:\images”中搜索“abc”。
- 删除名称中包含“abc”的结果文件。 (这会将它们移至回收站)
- 将父文件夹“images”重命名为“images1”。
- 然后恢复删除的文件,这会自动创建以前的目录结构。
- 然后使用“删除空目录”软件删除所有空文件夹。
虽然这种方法按我的意图工作,但它非常慢,因为我的图像集合超过了数千张图像。 搜索、删除和恢复它们非常耗时。
我知道这可以使用任一脚本(does、powershell 或自动热键)(这些是我最喜欢的脚本语言)中的某些脚本来实现,但我不知道如何实现这一点。
请帮忙。
【问题讨论】:
-
你试过什么? [如何创建最小、完整和可验证的示例][stackoverflow.com/help/mcve].你应该研究如何使用
Get-ChildItem -Recurse -Filter ...和Copy-Item来实现你想要的。
标签: powershell cmd autohotkey