Linux压缩解压核心是先用file识别格式,再按场景选工具:服务器用tar -czvf/.tar.gz,跨平台用zip -r/.zip;解压前用tar -tzvf或unzip -l预览,-C指定目录时需确保路径存在。

Linux 服务器上处理文件,压缩、解压和归档是每天都会遇到的操作。关键不是记住所有参数,而是掌握几条高频组合,覆盖 95% 的日常场景。
识别压缩包类型再操作
别光看后缀名——file 命令才是真相探测器:
-
file archive.tar.gz→ 确认是不是真正的 gzip 压缩包 -
file data.zip→ 验证是否为标准 zip 格式,避免 Windows 生成的非标准变体 -
file notes.tar→ 区分纯归档(无压缩)和已压缩包,决定是否跳过解压步骤
识别清楚后,按用途选工具:服务器内部传输用 .tar.gz,发给 Windows 同事就用 .zip。
用 tar 打包 + gzip 压缩一步到位
这是 Linux 上最常用、最稳妥的组合:
- 压缩目录:
tar -czvf backup.tar.gz /var/log/nginx/ - 压缩多个文件:
tar -czvf config.tar.gz nginx.conf ssl.conf - 排除临时文件:
tar -czvf app.tar.gz --exclude='*.tmp' --exclude='node_modules' ./app/
-c 创建、-z 调用 gzip、-v 显示过程、-f 指定文件名——这四个字母必须连用,且 -f 后紧跟文件名,不能换位置。
Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。
安全解压到指定目录
解压前先检查内容,避免“炸弹包”覆盖重要文件:
- 只看不提取:
tar -tzvf archive.tar.gz | head -20(列出前 20 行内容) - 解压到目标目录:
tar -xzvf archive.tar.gz -C /opt/app/ - 注意:-C 后的路径必须已存在,否则会报错;可用
mkdir -p /opt/app提前创建
如果压缩包里路径带 ../,默认解压可能跳出目标目录——加 --strip-components=1 可去掉一层路径,更可控。
跨平台交换优先用 zip
和 Windows 或 macOS 用户传文件时,zip 是唯一无需解释的格式:
- 打包目录:
zip -r project.zip src/ docs/ README.md - 解压并指定位置:
unzip project.zip -d /tmp/import/ - 解压时不覆盖已有文件:
unzip -n project.zip
zip 支持密码保护(zip -er secure.zip files/),但服务器端一般不推荐用加密压缩,备份与传输应靠权限和网络策略保障。

















