当前位置: 首页 > news >正文

Linux --- tar命令常见用法

Linux tar 命令


1.分卷压缩与解压

Linux 下最通用的分卷压缩方式是结合tar(打包/压缩)与split(切割)命令使用管道流处理。

1.1 分卷压缩

将目录打包并分割成指定大小的多个文件。

# 语法tar-czvf -<要打包的目录>|split-b<分卷大小>-d -<输出文件前缀># 示例:将 logs 目录压缩,每卷 500MB,命名为 logs.tar.gz.00, logs.tar.gz.01...tar-czvf - logs/|split-b 500M -d - logs.tar.gz.

参数解析:

  • tar -czvf -: 最后面的-代表输出到标准输出(Stdout),不写入磁盘文件。
  • split -b 500M: 设置切割大小(单位:k,M,G)。
  • split -d: 使用数字后缀(00, 01…)而非默认的字母(aa, ab…)。
  • split -: 最后面的-代表从标准输入(Stdin)读取数据。

1.2 分卷解压

将多个分卷文件合并还原。

# 语法cat<分卷前缀>*|tar-xzvf -# 示例:解压上述 logs.tar.gz.00 等文件catlogs.tar.gz.*|tar-xzvf -

原理:cat利用通配符读取所有分卷流,通过管道传回给tar进行解压。


2. 常用基础命令速查

2.1 压缩 (打包)

根据需求选择不同的压缩算法(压缩率:xz > bzip2 > gzip;速度则反之)。

  • .tar.gz(最常用,速度快)
    tar-czvf archive.tar.gz /path/to/folder
  • .tar.bz2(压缩率较高)
    tar-cjvf archive.tar.bz2 /path/to/folder
  • .tar.xz(压缩率最高,耗时久)
    tar-cJvf archive.tar.xz /path/to/folder

2.2 解压 (解包)

现代tar通常能自动识别压缩格式,只需记住-xvf即可,但显式指定算法更保险。

  • 解压到当前目录
    tar-xzvf archive.tar.gz
  • 解压到指定目录 (-C参数)
    # 目标目录必须先存在mkdir-p /opt/backuptar-xzvf archive.tar.gz -C /opt/backup

2.3 查看内容 (不解压)

在解压大文件前,先查看里面有什么。

tar-tvf archive.tar.gz

3. 参数详解表

参数含义备注
-cCreate(创建)建立新的归档文件
-xExtract(提取)从归档文件中提取文件
-tList(列表)查看归档文件内容
-vVerbose(详细)显示处理过程(推荐使用)
-fFile(文件)指定归档文件名(必须是最后一个参数,后接文件名)
-CChange Directory切换到指定目录进行解压
-zGzip处理.tar.gz格式
-jBzip2处理.tar.bz2格式
-JXz处理.tar.xz格式

4. 进阶技巧

4.1 排除特定文件/文件夹 (--exclude)

打包项目源码时,通常需要排除.git目录或编译生成文件。

# 注意:--exclude pattern 最好放在命令靠前位置,且不加前导斜杠tar--exclude='.git'--exclude='*.o'-czvf project.tar.gz ./project_src

4.2 仅打包,不压缩

如果你只是想把一堆文件变成一个包(方便传输),但不消耗 CPU 压缩:

tar-cvf bundle.tar /path/to/files

4.3 相对路径 vs 绝对路径

警告:尽量不要使用绝对路径(如/home/user/data)打包。

  • 坏处:解压时会强制覆盖绝对路径下的文件,可能导致系统文件损坏或权限问题。
  • 做法:先cd到父目录,使用相对路径打包。
# 推荐做法cd/home/user/tar-czvf data.tar.gz ./data
http://www.jsqmd.com/news/290634/

相关文章:

  • 人群仿真软件:Pathfinder_(14).与其他软件的集成与互操作
  • CentOS7更换为阿里源
  • Java毕设项目推荐-基于SpringBoot的电竞赛事管理系统的设计与实现基于springboot的电竞赛事中心设计系统【附源码+文档,调试定制服务】
  • 【Redis基础入门篇2】Redis 5 种基础数据结构,这篇讲得明明白白
  • 人群仿真软件:SimWalk_(1).SimWalk概述
  • 全网最全研究生必备AI论文工具TOP10
  • 【Redis基础入门篇1】一篇搞懂 Redis:是什么?为什么用?怎么装?
  • 人群仿真软件:SimWalk_(1).SimWalk概述与应用领域
  • TRIMMEAN函数完全指南:Excel中去除极端值的智能平均计算
  • 计算机Java毕设实战-基于SpringBoot的智慧医疗管理系统【完整源码+LW+部署说明+演示视频,全bao一条龙等】
  • 结课考试项目
  • 2026年微信商城小程序怎样开通?最新0代码开发教程
  • 大模型推理能力的评估标准与方法
  • Java计算机毕设之基于springboot的医院管理系统(完整前后端代码+说明文档+LW,调试定制等)
  • 基于LLM大模型的股票基金周预测Agent
  • Java毕设项目:基于springboot的智慧医疗管理系统(源码+文档,讲解、调试运行,定制等)
  • 人群仿真软件:Pathfinder_(13).更新与版本管理
  • 数据治理在大数据服务中的关键作用与实践
  • Java毕设项目:基于springboot的在线教育平台(源码+文档,讲解、调试运行,定制等)
  • 强烈安利8个AI论文写作软件,本科生毕业论文必备!
  • 人群仿真软件:Pathfinder_(13).最新版本特性与更新说明
  • 使用git clone后文件夹空没有内容
  • 【课程设计/毕业设计】基于SpringBoot的医疗健康管理平台【附源码、数据库、万字文档】
  • 【SimpleITK】B-Spline 配准中的多分辨率陷阱与验证
  • Java计算机毕设之基于springboot的个性化音乐推荐系统基于springboot的个性化喜好音乐推荐系统(完整前后端代码+说明文档+LW,调试定制等)
  • 吐血推荐8个AI论文工具,专科生搞定毕业论文!
  • 【毕业设计】基于springboot的在线教育平台(源码+文档+远程调试,全bao定制等)
  • 依托政府工作报告备战遴选考试全攻略
  • 【TWVRP问题】基于狼群算法和模拟退火算法求解带时间窗车辆路径动态规划问题附Matlab代码
  • Compose中rememberUpdatedState的作用