Linux tar 命令
在Linux平台,tar是主要的打包工具。tar命令通常用来把文件和目录压缩为一个文件( tarball 或 tar, gzip 和 bzip)。
Tar选项:
- c – 创建压缩文件
- x – 解压文件
- v – 显示进度.
- f – 文件名.
- t – 查看压缩文件内容.
- j – 通过bzip2归档
- z –通过gzip归档
- r – 在压缩文件中追加文件或目录
- W – 验证压缩文件
把目录/home/abc/code 打包为code.tar
tar -cvf code.tar /home/abc/code/
压缩为 tar.gz 格式的包
tar cvzf code.tar.gz /home/abc/code
压缩率更高的 tar.bz2 格式的包
tar cvfj code.tar.bz2 /home/abc/code/
解压 tar 包
tar -xvf code.tar -C /home/abc/code
解压 tar.gz 包
tar -xvf code.tar.gz
解压 tar.bz2 包
tar -xvf code.tar.bz2
列出 tar 包内容
tar -tvf code.tar
解压tar包中的单个文件
tar --extract --file=code.tar Readme.txt
解压tar包中的多个文件
tar -xvf code.tar "file 1" "file 2"
解压同一种类型的文件(下面代码是解压txt)
tar -xvf code.tar --wildcards *.txt'
在tar包中加入文件或目录
tar -rvf code.tar abcd.txt // 文件
tar -rvf code.tar Doc // 目录
1. tar.gz压缩命令:
命令格式:
tar -zcvf 压缩文件名.tar.gz 被压缩文件名
可先切换到当前目录下。压缩文件名和被压缩文件名都可加入路径。
2. tar.gz解压缩命令:
命令格式:
tar -zxvf 压缩文件名.tar.gz
解压缩后的文件只能放在当前的目录。
解压安装
- 解压tar.gz包
最常见的gz格式,则可以执行:“tar –xvzf 软件包名”,就可以一步完成解压与解包工作。
tar -zxvf 软件包名.tar.gz -C /home/hao
将软件包名.tar.gz解压到指定的目录下 (注意:-C为大写)
- 进入解压后的文件目录下 执行“./configure”命令为编译做好准备;
./configure --prefix=/opt
表示安装到/opt目录
- 执行“make”命令进行软件编译;
- 执行“make install”完成安装;
- 执行“make clean”删除安装时产生的临时文件。
3. tar.bz2解压缩命令:
命令格式:
tar -jxvf xx.tar.bz2
4.Linux压缩和解压.bz2文件-bzip2
在Linux系统下使用bzip2压缩和解压.bz2文件。
Bzip2是小有名气的压缩工具,流行的Linux发行版都默认安装了这个工具,包括macOS。
如果你没有安装,执行如下命令安装:
$ sudo apt install bzip2 # Debian/Ubuntu
$ sudo yum install bzip2 # CentOS
$ sudo dnf install bzip2 # Fedora
使用bzip2压缩文件
$ bzip2 filename
# 或
$ bzip2 -z filename
# 生成.bz2文件
# 分别压缩多个文件
$ bzip2 filename1 filename2 [filename*]
上面命令压缩完文件之后,会把原文件删除。如果需要保留原文件,使用-k选项。
$ bzip2 -zk filename # -f选项强制覆盖已存在的文件
要压缩tar文件,执行:
$ bzip2 -zkf backup.tar # 生成.tar.bz2文件;解压时先使用bzip2再使用tar命令
设置块大小:100k->900k
$ bzip2 -k1 filename
$ bzip2 -kf9 filename
使用bzip2解压文件
使用-d选项:
$ bzip2 -d filename.bz2 # 文件扩展名必须是.bz2
$ bzip2 -vfd filename.bz2 # -f覆盖文件 -v可视化输出 -k保留原文件
查看bzip2帮助:
$ bzip2 -h
$ man bzip2
REF: https://cloud.tencent.com/developer/article/1406683