我有一个相对井然有序的目录结构,其中包含我的所有照片、视频和相关文件。此结构存在于多个驱动器上。这些驱动器还映射为网络驱动器,因此我可以在各种机器上访问它们。
我希望在我的一个或多个机器上创建一个文件夹,这样我就可以访问这些不同驱动器上的文档子集,就好像它们都在一个位置一样。
以下是我要收集的文件的一些具体示例以及它们的位置:
X:\2021-10-29 camping\canon g16\developed\IMG_1231.jpg
X:\2021-09-29 camping\developed\IMG_1232.jpg
Z:\2020-11-29 camping\canon g16\developed\IMG_1233.jpg
W:\2021-10-29 skiing\saturday\canon g16\developed\IMG_1234.jpg
结果文件夹将包含上述每个文件,但不包含子文件夹。我可以想象一个正则表达式可以匹配这些文件,或者某种编程语言中的搜索算法可以找到这些文件,但我不知道如何让 Windows 相信存在包含这些文件的文件夹。似乎应该可以使用链接或符号链接或其他技巧。有什么想法吗?我还希望最终设置某种安排,将我的所有物理存储驱动器显示为一个逻辑驱动器 - 理想情况下可以选择随着时间的推移添加更多物理设备。因此,如果这是实现我的目标的第一步,我会先考虑这样做。
答案1
我有一个创建硬链接的脚本,它使单个文件在多个目录中可见。(它是在 Linux 上开发的,我很惊讶它可以在 Windows 上运行)。
您可以安装 Cygwin 并使用其ln
命令:ln source_file destination
。如果您更喜欢使用 Python 来开发脚本,则可以使用:
import os
os.link(source, destination)
我想大多数语言都可以做到这一点。
使用 Cygwin,您可以输入:
find source -type f | xargs -I "{}" ln "{}" destination_directory
这将在单个目录中创建所有文件的新链接。(注意,在 Cygwin 中C:\
命名/cygdrive/c
)