有人能指点我如何编写一个批处理脚本来将文件逐个移动到zip文件中,然后删除原始文件吗?这些涉及UNIX shell和IT技术。
由于没有足够的空间来存放创建的zip文件,因此无法使用标准的zip功能。
请问有什么建议吗?
试试这个:
zip -r -m source.zip *
虽然不是很好的解决方案,但它非常简单。我最终找到一个递归压缩文件夹的Python脚本,并添加了一行代码,在将文件添加到ZIP文件后将其删除。
您可以使用find
来实现此操作
find . -type f -print0 | xargs -0 -n1 zip -m archive
这将把每个文件移动到zip文件中,保留目录结构。然后你会留下一些空目录,可以轻松删除。此外,使用find
命令可以让你自由选择要压缩的文件。
我使用:
zip --move destination.zip src_file1 src_file2
这里是关于 man 手册中 "--move" 选项的详细说明:
--move
将指定的文件移动到 zip 压缩包中;实际上,这会在制作指定的 zip 压缩包后删除目标目录/文件。如果一个目录在文件被删除后变为空,该目录也将被删除。在 zip 成功创建压缩包之前,不会执行任何删除操作。这对于节省磁盘空间非常有用,但潜在风险很大,因此建议与 -T 一起使用,在删除所有输入文件之前测试压缩包。