我有一台 Windows Server 2008R2,其中有大量的视频文件共享,我需要在批处理脚本中运行 zip 命令行,它将:
a) 使用相应的文件名压缩/压缩每个文件夹内的每个视频文件
b) 然后使用相应的名称压缩/压缩每个文件夹
c) 保留原始文件夹结构
d) 然后将整个结构压缩为一个包含整个文件夹结构和视频 zip 文件的单独 zip 文件。
这有可能吗?我可以通过命令行使用上述任何程序来批处理/powershell 吗?
该服务器配备 8GB RAM 和 Core i3 处理器。
非常感谢您的建议和帮助
答案1
假设目录名称是\视频.
创建一个批处理文件,其中包含以下行:
for /r \video %%a in (.) do @zip.exe -m "%%~pa\video" "%%~pa\*"
zip.exe -m -r Allvideo "\video\*"
这将创建一个名为 allvideo.zip 的最终档案,其目录结构与 \video 相同。video.zip 位于视频文件曾经所在的位置。
对于此示例,我使用了位于以下位置的 Zip 实用程序: http://www.info-zip.org/Zip.html
您的服务器有足够的马力来完成这项活动,但是您可能需要注意磁盘空间。我只能通过压缩视频文件来减少约 5% 的大小。
答案2
7zip 附带 7z.exe,可在命令行或脚本中使用。但是,您必须使用脚本来执行所需的文件夹结构压缩。我做过类似的事情,按月然后按年压缩日志文件。它不太美观,但如果您想查看,我可以发布脚本。