Linux下如何压缩打包文件夹?关于tar与7zip的实操疑问
关于Linux下打包
stacey文件夹的解决方案 嘿,作为Linux新手,咱们一步步把这个问题理清楚~
首先先修正下你用的tar命令小细节:你之前写的tar -cvzf stacey.tar *会把当前目录下的所有内容都打包成stacey.tar,而不是只针对stacey文件夹。如果只想打包这个目标文件夹,正确的tar命令应该是:
tar -cvzf stacey.tar.gz stacey/
这里的参数解释下(新手可以记一下):
-c:创建新的归档包-v:显示打包的详细过程(可选,开着能看到进度,新手用着更放心)-z:调用gzip进行压缩,这样直接生成.tar.gz格式的压缩包,不用额外步骤-f:指定输出的文件名- 最后跟着的
stacey/是要打包的目标文件夹(加斜杠是为了确保打包的是文件夹本身,避免和同名文件混淆)
然后来说你关心的「结合7zip生成stacey.tar.gz」的问题:当然可以!有两种常用的方式,看你习惯哪种:
方式1:先归档再压缩
先通过tar创建未压缩的归档包,再用7zip把它压缩成gz格式:
# 第一步:创建未压缩的tar包 tar -cvf stacey.tar stacey/ # 第二步:用7zip压缩这个tar包 7z a -tgzip stacey.tar.gz stacey.tar # 可选:删除临时的未压缩tar包 rm stacey.tar
方式2:直接用7zip生成tar.gz包
7zip支持直接处理复合格式(先tar归档再gzip压缩),用管道命令可以一步完成:
7z a -ttar -so stacey/ | 7z a -si -tgzip stacey.tar.gz
如果你的7zip版本比较新,还可以用更简洁的写法:
7z a stacey.tar.gz -ttar stacey/
这种方式不需要生成临时文件,一步到位。
小提醒:如果怕操作出错,可以先找个测试文件夹练手,熟悉命令后再处理真实文件哦~
内容的提问来源于stack exchange,提问作者Stacey
相关产品推荐
相关产品推荐

