我的工作是接收和处理大量包含照片和扫描文档的 CD,这些 CD 来自不太擅长使用计算机的客户。我有时会收到一些光盘,里面的文件路径名如下:
/photos of my house after all the mold got started/photos of the living room and dining room and bathroom/photos of the bathroom only not the living room and dining room/photos of the bathroom towels/photos of the pink bathroom towels only/photos of the pink bathroom towels with spots/as you can see this towel is just totally covered with green mold it looks like a forest on there i swear to god (3).jpg
我必须将每张光盘的内容复制到文件服务器。Windows 7 上的 Windows 资源管理器(文件服务器和所有办公室计算机都使用它)不允许您复制和粘贴路径名超过 259 个字符的文件或目录。我可以使用 Robocopy 强制进行传输,但当我的同事需要复制或移动其中一个文件或目录时,我不能要求他们做同样的事情。
文件和目录名称中的信息很重要,因此我不能只使用 shell 脚本或其他东西将每个名称截断为 8 个字符。而且我不能一直浏览每张光盘并手动重命名所有内容,将所有描述复制到文本文件中;我在这个世界上的时间有限,我已经浪费了太多时间做这件事。
由于我还没有找到任何方法让 Windows 资源管理器穿上它的大裤子,我理想的解决方案是某种软件,它可以将光盘内容展平,缩短文件名,并生成包含所有旧路径名信息的单个索引文件。如果索引是 HTML 格式,并带有指向各个文件的链接,我的生活就完整了。
除此之外,我愿意接受任何其他建议,使我不必手动完成此操作。
以下都不是可行的解决方案:我无法为每个客户提供 Windows 文件系统课程并告诉他们清理他们的磁盘,我无法“解雇”客户,我无法扔掉他们的磁盘并假装我没有拿到它们,我无法培训所有同事如何使用 Robocopy,我无法将整个办公室切换到 Ubuntu。
答案1
会7-zip有帮助吗?
将文件存档,并保留路径信息,然后用户可以单击(并阅读)文件夹名称,同时获取相应的文件。
答案2
要保存当前目录结构,可以使用 tree 之类的东西。然后要展平,只需获取所有文件的列表dir /s
,然后使用命令将它们复制xcopy
到您想要的任何地方。
创建 HTML 文档会更具挑战性,但我认为这不会解决您的问题。您的同事要么无法看到这些文件(因为它们在您的机器上),要么他们仍然必须处理服务器上的文件,并且会遇到与现在相同的问题。
答案3
有多种 GUIrobocopy
可供您的同事使用。
最简单的可能是Robocopy 图形用户界面。
你也可以尝试富文本复制,它比 Robocopy GUI 具有更多的功能。
robocopy
然而,TechNet 文章并没有具体说明它是否不是 GUI只是的 GUI robocopy
,因此它可能无法处理过长的路径名。