Linux tar命令与解压缩
本机环境:CentOS7.6
整体理解:
- tar命令可以完成压缩与解压缩任务,区别在于参数选项
- 打包是打包,可以不压缩,两者无绑定
- 命令书写
- 压缩时,源文件在后,目标文件在前
- 解压缩时,源文件在前,目标文件在后。
- 压缩后的文件名书写,应体现压缩过程,方便后续解压
- 如看到 xxx.tar.gz 便知 可用 -xz 解压缩
-
参数选项
-c
打包文件——打包时用-x
解包 .tar 打包文件——解包时用-z
压缩或解压缩——打包或解包时运用压缩或解压缩-v
显示详细信息-f
指定压缩后的文件名——该命令必要选项
-
应用实例
-
压缩某地多个文件到某地
tar -czvf [dest] [src] [src]
- 例:将/home/bohr/下载/source目录下的src.java 和 src.txt 文件打包压缩至 /home/bohr/下载目录下的dest文件夹
- tar -czvf …/dest/mysrc.tar.gz src.*
-
打包压缩某文件夹到某地
tar -czvf [dest] [src]
——同上,压缩文件与文件夹一样写
-
将某打包压缩文件解压至某地
-
tar -xzvf [src] [dest]
-
例:将 /home/bohr/下载/dest/mysrc.tar.gz 解压至当前目录
- tar -xzvf mysrc.tar.gz
- tar -xzvf mysrc.tar.gz
-
例:将 /home/bohr/下载/dest/mysrc.tar.gz 解压至next文件夹——要用到“-C”来指定目录
- tar -xzvf mysrc.tar.gz -C next
- tar -xzvf mysrc.tar.gz -C next
-
-
-
实例全部代码
-
[bohr@Bohr-CentOS ~]$ pwd /home/bohr [bohr@Bohr-CentOS ~]$ ls 公共 模板 视频 图片 文档 下载 音乐 桌面 [bohr@Bohr-CentOS ~]$ cd 下载 [bohr@Bohr-CentOS 下载]$ ls dest source [bohr@Bohr-CentOS 下载]$ cd dest [bohr@Bohr-CentOS dest]$ ls dest.txt source [bohr@Bohr-CentOS dest]$ rm source/ rm: 无法删除"source/": 是一个目录 [bohr@Bohr-CentOS dest]$ rm -rf source/ [bohr@Bohr-CentOS dest]$ rm dest.txt [bohr@Bohr-CentOS dest]$ ls [bohr@Bohr-CentOS dest]$ cd ../source/ [bohr@Bohr-CentOS source]$ ls src.java src.tar.gz src.txt [bohr@Bohr-CentOS source]$ rm src.tar.gz [bohr@Bohr-CentOS source]$ ls src.java src.txt [bohr@Bohr-CentOS source]$ clear [bohr@Bohr-CentOS source]$ pwd /home/bohr/下载/source [bohr@Bohr-CentOS source]$ ls src.java src.txt [bohr@Bohr-CentOS source]$ tar -czvf ../dest/mysrc.tar.gz src.* src.java src.txt [bohr@Bohr-CentOS source]$ cd ../dest [bohr@Bohr-CentOS dest]$ ls mysrc.tar.gz [bohr@Bohr-CentOS dest]$ ^C [bohr@Bohr-CentOS dest]$ ^C [bohr@Bohr-CentOS dest]$ ls mysrc.tar.gz [bohr@Bohr-CentOS dest]$ tar -xzvf mysrc.tar.gz src.java src.txt [bohr@Bohr-CentOS dest]$ ls mysrc.tar.gz src.java src.txt [bohr@Bohr-CentOS dest]$ mkdir next [bohr@Bohr-CentOS dest]$ ls mysrc.tar.gz next src.java src.txt [bohr@Bohr-CentOS dest]$ tar -xzvf mysrc.tar.gz -C next src.java src.txt [bohr@Bohr-CentOS dest]$ cd next/ [bohr@Bohr-CentOS next]$ ls src.java src.txt [bohr@Bohr-CentOS next]$
-