tar 打包与解压入门:把文件打包、解压和查看内容

举报
yd_250779715 发表于 2026/11/08 18:48:36 2026/11/08
【摘要】 在 Linux 里,备份、搬运文件时总会遇到一堆零散文件:配置、日志、代码、图片……一个一个复制既慢又容易漏。tar 就是解决这个问题的工具:它能把很多文件和目录打包成一个文件,需要时再解开,还能在不解压的情况下先看里面有什么。一、tar 是打包,不是压缩tar 的名字来自磁带归档,本职工作是“打包”。一个 .tar 文件只是把多个文件装进一个包,体积基本不变;再经过 gzip 压缩,就得到...

在 Linux 里,备份、搬运文件时总会遇到一堆零散文件:配置、日志、代码、图片……一个一个复制既慢又容易漏。tar 就是解决这个问题的工具:它能把很多文件和目录打包成一个文件,需要时再解开,还能在不解压的情况下先看里面有什么。

一、tar 是打包,不是压缩
tar 的名字来自磁带归档,本职工作是“打包”。一个 .tar 文件只是把多个文件装进一个包,体积基本不变;再经过 gzip 压缩,就得到常见的 .tar.gz(也写作 .tgz),体积会小很多。记住:打包是归拢,压缩是变小,两件事可以一起做,也可以分开做。

二、打包
最常用的命令是:tar -czvf backup.tar.gz myproject/
它把 myproject/ 打包并压缩成 backup.tar.gz。选项拆开记:c 创建包,z 用 gzip 压缩,v 显示过程,f 后面跟包文件名。只想打包不压缩,去掉 z:tar -cvf backup.tar myproject/
打包多个文件,把它们依次列在后面:tar -czvf files.tar.gz a.txt b.txt notes/。包名放在 f 后面,源文件放在最后,顺序别弄反。

三、解压前先看一眼
收到别人发来的包,别急着解压,先用 t 查看内容:tar -tzvf backup.tar.gz
它只列出包里的文件清单,不会真的解开文件。看过清单,你能确认包里是不是你要的东西、会不会解压后铺满当前目录。养成“先看后解”的习惯,能避免很多麻烦。

四、解压
解压用 x,对应打包的 c:tar -xzvf backup.tar.gz
没有压缩的包用 tar -xvf backup.tar。解压默认在当前目录展开;想解到指定目录,加 -C:tar -xzvf backup.tar.gz -C /tmp/restore/
注意 -C 后面的目录要事先存在,tar 不会替你创建。解压前先用 ls 确认当前目录,避免解到错误的地方。

五、记住六个字母
常用的选项只有六个:c 创建、x 解压、t 查看、v 显示过程、z 用 gzip 压缩、f 指定包名。拼起来就是日常的全部操作:打包 -czvf,查看 -tzvf,解压 -xzvf。需要压缩就带 z,不需要就去掉。

六、容易踩的坑
第一,解压同名文件会直接覆盖,重要文件先备份再解压。第二,包里用了绝对路径时,解压位置可能出乎意料,尽量用相对路径打包。第三,解压后文件权限基本保持原样,搬到别的机器上仍要检查能否读写、执行。第四,.tar.gz 不是加密,敏感内容不要只靠打包来“藏”。

练一练:新建一个练习目录,放两个文本文件和一个子目录,依次练习打包、查看、解压到新目录,再用 ls 对比前后文件是否一致。三分钟下来,tar 的三板斧就掌握了。下次备份项目、搬运配置时,先想到 tar:一个命令打包,一个命令解开,简单可靠。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。