使用 CLI 将一种存档类型转换为另一种存档类型

使用 CLI 将一种存档类型转换为另一种存档类型

如果必须将特定的存档类型转换为另一种格式(例如 - tar.gzzip,则可以使用打开存档file-roller并转到 -

存档 -> 另存为 ->(选择扩展名)-> 保存

此外,在这种方法中,其他选项可用于为文件设置密码,对于使用的文件zip则无法设置密码。tar.gzfile-roller

如何使用命令行执行上述步骤?

答案1

基本 Shell 命令:

$ cd $HOME
$ mkdir tempdir
$ cd tempdir
$ tar -zxvf ../archive.tar.gz

此时,您已拥有archive.tar.gz$HOME/tempdir/ 中内容的副本

$ zip -rmp 密码../archive.zip *

... 将从 tempdir/ 的内容创建一个 zip 存档,然后删除添加的文件。我推测它仍然会这样做;use standard (weak) PKZip 2.0 encryption正如选项所述-e- 它不接受密码,而是提示输入密码。

确保/验证你仍然在 tempdir/

$密码
.../临时目录

如果上面末尾有除“/tempdir”之外的其他内容,
不要继续接下来是:

$ rm-rf *  
$ CD..
$ rmdir tempdir

以上所有操作也都可以通过管道实现,例如:

$ tar -zxvf ./archive.tar.gz - | zip -p 密码 - ./archive.zip 

...不过我觉得没有理由去尝试 - 因为虚弱的加密以及 zip 处理特殊文件、链接等的方式可能存在的问题。

如果您想要真正的加密,请查看gnupg相关实用程序。

man tar,,,,可能包含对上述内容至关重要的man zip信息,特别是我还没有尝试过的管道转换。zip --helpzip -h2 | lesstar --help | less

答案2

您可以使用tar-转-zip为此目的。您需要做的就是:

使用以下方式安装 node.js没有记录如果你没有。

然后安装tar-to-zip

npm i tar-to-zip -g

并将其与以下项结合使用:

tar2zip hello.tar.gz

它将显示操作进度的百分比并hello.zip在同一目录中创建文件。

也可以使用管道:

cat hello.tar.gz | tar2zip > hello.zip

不幸的是,没有办法设置密码。

相关内容