.tar文件

# 仅打包,并非压缩
tar -xvf FileName.tar           # 解包
tar -cvf FileName.tar DirName   # 将DirName和其下所有文件(夹)打包

.gz文件

#解压
gunzip FileName.gz  # 解压1
gzip -d FileName.gz # 解压2

# 压缩,只能压缩文件
gzip FileName      

.tar.gz文件、 .tgz文件

# 解压
tar -zxvf FileName.tar.gz

# 解压到目标路径
tar -C DesDirName -zxvf FileName.tar.gz 

# 将DirName和其下所有文件(夹)压缩
tar -zcvf FileName.tar.gz DirName      

.tar.bz2文件

tar -jxvf FileName.tar.gz # 解压
tar -jcvf FileName.tar.gz DirName # 将DirName及其下的所有文件(夹)压缩
tar -C DesDirName -zxvf FileName.tar.gz # 解压到指定目录(DesDirName)

.bz2文件

bzip2 -d FileName.bz2 # 解压
bzip2 FileName # 压缩,只能压缩单个文件

.zip文件

zip工具在部分系统中没有预安装,直接使用会提示未找到命令,具体和安装的Ubuntu版本和安装时候的选项有关。如果提示未找到命令(command not found)可以手动安装sudo apt install zip
对于zip工具来说,压缩和解压的命令zipunzip是两个单独的软件包,需要分别安装。不过如果使用apt安装的话通常会作为依赖一起自动安装。

# 解压
unzip FileName.zip          # 解压

# 压缩
zip FileName.zip DirName    # 将DirName本身压缩
zip -r FileName.zip DirName # 压缩,递归处理,将指定目录下的所有文件和子目录一并压缩

.7z文件

7z工具7zip在Ubuntu发行版本中通常没有默认安装,需要先手动安装sudo apt install 7zip
当然也可以到7zip官网(7-zip.org)手动下载

7z x FileName.7z -r -o./ # 解压到当前目录
7z a -t7z -r FileName.7z DirName # 压缩为7z格式,递归处理

.rar文件

# mac和linux并没有自带rar,需要去下载

rar x FileName.rar      # 解压
rar a FileName.rar DirName # 压缩
  • .tar是打包,.tar.gz才是压缩过的文件.
  • tar.gz常见于unix系统,在ubuntu或macos可以直接解压,而.zip常见于windows系统
  • 详情可见 .zip和.tar.gz的文件有什么区别?。
    • zip原义“速度”,支持分卷压缩、128/256-bit AES加密算法等功能
    • tar是“tape archive”(磁带存档)的简称, 在Linux里面,tar一般和其他没有文件管理的压缩算法文件结合使用,用tar打包整个文件目录结构成一个文件,再用gz,bzip等压缩算法压缩成一个

参考:

https://blog.csdn.net/songbinxu/article/details/80435665


TianziWeb From 2011.02.15