更新 7zip 中的函数字母

更新 7zip 中的函数字母

我试图了解 7zip 中的某些功能字母。但我被“u”(更新)功能字母困住了,它表示存档文件中的更新。它只更新文件的内容,但如果我删除一些子目录和文件,它不会更新存档文件。有人能告诉我为什么会发生这种情况吗?或者有人有 7zip 中更新功能字母的官方文档吗?请告诉我。

更新:

我在这里附加了显示我的目录结构的屏幕截图。

目录结构

现在,每当我修改文件中的某些内容并运行“update”命令时,它都会相应地更新存档文件。但是,如果我删除某些文件和子目录(比如说,我删除了 file1 和 dir5),那么它不会更新存档文件。

仅供参考,我总是在 dir1 目录中运行以下命令。

$ 7z u dir1.7z

答案1

默认情况下,即使文件从源中删除,存档也会在更新期间保留文件。

如果您想从档案中删除源路径中不再存在的文件,请使用此开关:使用此-uq0 开关时要小心 - 如果源路径错误,档案中的数据可能会丢失/被擦除。

$ 7z u dir1.7z -uq0 "/home/user/source_dir/*"

如果你想递归地遍历目录,请添加-r开关

$ 7z u dir1.7z -uq0 -r "/home/user/source_dir/*"

默认情况下,7z 使用 Solid 方法来存储数据 - 如果文件所属的块中只有一个文件不同/更新,则包含文件的整个块将被重新压缩。

相关内容