news 2026/6/9 19:46:01

项目环境部署系列(一)tar命令

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
项目环境部署系列(一)tar命令

tar

  • tar命令功能速查表
    • 基础格式与选项
    • 常用命令示例表
    • 高级功能表
    • 压缩算法对比表
    • ⚡ 实用技巧表
    • 故障排除表
    • 日常记忆口诀
      • 1. 性能对比分析
      • 2. 实际场景建议
      • 3. 常用快速解压命令
      • 4. 额外性能技巧

tar命令功能速查表

基础格式与选项

分类选项说明常用组合
操作模式-c创建新归档tar -cf archive.tar files/
-x提取归档文件tar -xf archive.tar
-t列出归档内容tar -tf archive.tar
-r追加文件到归档tar -rf archive.tar newfile
-u更新(仅添加较新文件)tar -uf archive.tar updated/
压缩类型-z使用gzip压缩/解压.tar.gz.tgz
-j使用bzip2压缩/解压.tar.bz2
-J使用xz压缩/解压.tar.xz
--lzma使用lzma压缩/解压.tar.lzma
-Z使用compress压缩/解压.tar.Z
常用参数-f指定归档文件名(必须总是需要
-v显示详细过程(verbose)调试时使用
-C改变到指定目录tar -xf file.tar -C /path/
-p保留文件权限和属性备份系统文件时重要
--exclude排除文件/模式--exclude="*.tmp"

常用命令示例表

场景命令说明
压缩tar -czf backup.tar.gz folder/创建gzip压缩的tar包
tar -cjf backup.tar.bz2 folder/创建bzip2压缩的tar包
tar -cJf backup.tar.xz folder/创建xz压缩的tar包(压缩率高)
解压tar -xzf backup.tar.gz解压gzip压缩包
tar -xjf backup.tar.bz2解压bzip2压缩包
tar -xJf backup.tar.xz解压xz压缩包
tar -xf archive.tar解压普通tar包
查看tar -tzf backup.tar.gz查看压缩包内容列表
tar -tvzf backup.tar.gz查看详细信息(权限、大小等)
部分操作tar -xzf backup.tar.gz file.txt只解压特定文件
tar -xzf backup.tar.gz dir/*.txt只解压匹配模式的文件
tar --delete -f archive.tar file.txt从tar包删除文件

高级功能表

功能命令说明
保留权限tar -cpzf backup.tar.gz /etc/备份系统文件保留所有属性
排除文件tar -czf backup.tar.gz --exclude="*.log" dir/排除所有.log文件
多文件排除tar -czf backup.tar.gz --exclude="*.tmp" --exclude="cache/" dir/排除多个模式
增量备份tar -g snapshot.snar -czf inc_backup.tar.gz dir/基于时间戳的增量备份
跨卷分割tar -czf - bigdir/ | split -b 2G - big.tar.gz.分割成2GB一卷
恢复分割包cat big.tar.gz.* | tar -xzf -合并分割的压缩包
远程操作tar -czf - /data | ssh user@host "tar -xzf - -C /backup"直接备份到远程服务器

压缩算法对比表

算法选项扩展名压缩率速度内存使用适用场景
gzip-z.tar.gz中等日常使用、网页传输
bzip2-j.tar.bz2较高中等需要较高压缩率
xz-J.tar.xz最高很慢长期归档、节省空间
lzma--lzma.tar.lzma很高很慢类似xz
zstd--zstd.tar.zst很快中等现代推荐(需安装)

:zstd不是默认支持,需安装zstd包:sudo apt install zstd

⚡ 实用技巧表

技巧命令解释
最快解压tar -xf archive.tar --no-same-owner跳过所有权检查(非系统文件)
最快压缩tar -cf archive.tar dir/不压缩,仅打包(最快)
查看进度tar -xzf big.tar.gz | pv | tar -x使用pv显示进度(需安装pv)
仅验证tar -tzf archive.tar >/dev/null && echo "OK"检查压缩包是否完整
创建时间戳tar -czf backup-$(date +%Y%m%d).tar.gz dir/自动添加日期到文件名
并行压缩tar -cf - dir/ | pigz -9 > backup.tar.gz使用pigz多线程压缩
最小尺寸tar -c dir/ | xz -9e > backup.tar.xz最大压缩率(最慢)

故障排除表

问题可能原因解决方案
“Cannot open: No such file”文件不存在或路径错误检查路径,使用绝对路径
“file changed as we read it”文件在打包时被修改忽略或重试,使用--warning=no-file-changed
权限被拒绝无读取/写入权限使用sudo或检查权限
空间不足磁盘空间不够df -h检查空间,清理或换位置
“Not found in archive”文件名错误tar -tf archive.tar查看正确文件名

日常记忆口诀

c 创建 x 提取 t 查看 z gzip j bzip J xz f 文件 v 详情 C 目录 日常使用记心间!

对于大多数用户,记住这些就足够了:

# 压缩:tar -czf 输出文件.tar.gz 要压缩的目录# 解压:tar -xzf 要解压的文件.tar.gz# 查看:tar -tzf 文件.tar.gz

通常来说,在终端使用tar命令解压会比在图形界面(右键提取)更快,尤其是在处理大型压缩包时。

1. 性能对比分析

对比项终端tar命令图形界面(右键提取)
速度通常更快通常稍慢
原因1. 直接调用底层工具,无图形开销
2. 通常使用更高效的默认参数
1. 有图形界面进程开销
2. 通常需要先索引文件列表用于进度显示
3. 可能包含额外的文件校验或交互准备
资源占用较低(纯命令行)较高(需加载文件管理器、进度窗口等)
功能控制丰富(可指定路径、排除文件、保留权限等)有限(通常只有基本选项)

2. 实际场景建议

使用tar命令更优的情况:

  • 大型压缩包(超过1GB):速度差异最明显,可能快10%-30%
  • 批量解压多个文件:可以写循环脚本一键处理
  • 远程/服务器环境:无图形界面时唯一选择
  • 需要特定解压选项时:如只解压部分文件、保留特殊权限等

图形界面也可用的情况:

  • 小型压缩包(几十MB):差异不明显,哪个方便用哪个
  • 需要直观查看进度:图形进度条更友好
  • 不熟悉命令行:避免输入错误路径

3. 常用快速解压命令

# .tar.gz 或 .tgztar-xzf filename.tar.gz# .tar.bz2tar-xjf filename.tar.bz2# .tar.xztar-xJf filename.tar.xz# .zip(需要安装unzip)unzipfilename.zip# 解压到指定目录tar-xzf filename.tar.gz -C /目标/路径

4. 额外性能技巧

如果追求极致速度,还可以:

  • 使用pigz替代gzip(多线程压缩/解压):
    sudoaptinstallpigztar-I pigz -xf archive.tar.gz
  • 解压时跳过时间戳同步(对于大量小文件有优化):
    tar--no-same-owner -xzf file.tar.gz
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/6 6:50:44

快速验证Python环境权限问题的原型工具开发

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 在快马平台上快速开发一个Python环境权限检查原型工具。要求:1) 30行以内代码 2) 实时显示关键目录的权限状态 3) 一键生成修复建议 4) 可保存检查结果 5) 响应式界面。…

作者头像 李华
网站建设 2026/6/6 7:03:28

3分钟搞定DBEAVER字体设置:效率提升300%的秘诀

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个DBEAVER字体设置效率工具,功能包括:1.一键应用预设字体方案 2.批量修改所有编辑器窗口字体 3.定时自动切换日间/夜间模式 4.字体设置差异对比功能。…

作者头像 李华
网站建设 2026/6/9 19:41:10

使用 jsr:@langchain/pyodide-sandbox 构建 Python 安全沙箱(完整入门教程)

适用于: LLM / Agent 执行不可信 Python 代码在线 Python 运行环境LangChain / 自动化工具沙箱多租户系统安全执行 一、背景介绍 在 LLM Agent、在线代码执行、插件系统等场景中,我们经常面临一个问题: 如何安全地执行用户提供的 Python 代码…

作者头像 李华
网站建设 2026/6/9 19:42:11

SCRCPY效率革命:比传统投屏快3倍的技巧

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 生成一个SCRCPY性能对比测试工具,功能包括:1.与传统投屏工具的帧率、延迟对比;2.不同参数下的性能测试;3.生成可视化对比图表&#…

作者头像 李华
网站建设 2026/6/9 19:40:48

企业级应用:DOCX.JS在自动化报告系统中的应用案例

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个企业自动化报告系统原型,使用DOCX.JS作为核心库。系统需要:1. 连接企业数据库获取数据;2. 将数据自动填充到预设的DOCX模板中&#xff…

作者头像 李华
网站建设 2026/6/9 19:45:32

1小时开发一个待办应用:嵌入式数据库实战

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个全栈待办事项管理应用,使用HSQL嵌入式数据库。要求:1. Spring Boot后端REST API;2. React前端界面;3. 待办事项的CRUD功能&…

作者头像 李华