Examples:
tar -cf archive.tar foo bar # Create archive.tar from files foo and bar. 创建存档
tar -tvf archive.tar # List all files in archive.tar verbosely.列出所有文件
tar -xf archive.tar # Extract all files from archive.tar. 从archive.tar提取所有文件。
语法:
tar 选项 包的名称 目标文件/目录
文件归档
[root@yl ~]# tar -cvf etc.tar /etc/
c create 创建
v 详细
f filename
file
作用:确定文件类型
语法:file 文件名
[root@yl ~]# file etc.tar
etc.tar: POSIX tar archive (GNU)
[root@yl ~]# file a.txt
a.txt: empty
注:linux系统不根据后缀名识别文件类型
把两个目录或目标+文件打包成一个软件包
[root@yl~]# tar cvf aa.tar /boot/ /etc/passwd
不解包,查看tar中的内容:
[root@yl~]# tar tvf etc.tar
解包:
[root@yl~]# tar xvf etc.tar
解包指定路径:
[root@yl~]# tar xvf etc.tar -C /opt/
查看文件大小
[root@yl ~]# du -sh grub2
8.1M grub2
[root@yl ~]# ll -sh grub2.tar
7.7M -rw-r–r–. 1 root root 7.7M 6月 16 11:26 grub2.tar
归档加压缩
gzip (cvf前面加个z 就是gzip压缩了)
语法格式:tar zcvf newfile.tar.gz SOURCE
-z, –gzip, –gunzip, –ungzip 通过 gzip 过滤归档
[root@yl ~]# tar zcvf grub2.tar.gz grub2
[root@yl ~]# ll -h grub2.*
-rw-r--r--. 1 root root 7.7M 6月 16 11:26 grub2.tar
-rw-r--r--. 1 root root 3.1M 6月 16 11:36 grub2.tar.gz
压缩过文件明显变小了
解压
[root@yl ~]# tar zxvf grub2.tar.gz -C test/
-C指定解压目录
归档+压缩 :bz2
格式(文件名格式): .tar.bz2
语法格式:tar jcvf newfile.tar.bz2 SOURCE
-j, –bzip2 通过 bzip2 过滤归档
压缩:
[root@yl ~]# tar jcvf grub2.tar.bz2 grub2
对比大小
[root@yl ~]# ll -h grub2.tar*
-rw-r--r--. 1 root root 7.7M 6月 16 11:26 grub2.tar
-rw-r--r--. 1 root root 2.5M 6月 16 11:43 grub2.tar.bz2
-rw-r--r--. 1 root root 3.1M 6月 16 11:36 grub2.tar.gz
解压
[root@yl ~]# tar jxvf grub2.tar.bz2 -C test/
zip
[root@yl ~]# zip -r grub2.zip grub2
[root@yl ~]# ll -h grub2.*
-rw-r--r--. 1 root root 7.7M 6月 16 11:26 grub2.tar
-rw-r--r--. 1 root root 2.5M 6月 16 11:43 grub2.tar.bz2
-rw-r--r--. 1 root root 3.1M 6月 16 11:36 grub2.tar.gz
-rw-r--r--. 1 root root 3.2M 6月 16 11:46 grub2.zip
解压
[root@yl ~]# unzip grub2.zip -d test/
补充:
压缩命令:gzip bzip2 xz
语法格式:
gzip 文件
bzip2 文件
xz 文件
解压:
gzip -d 文件
bzip2 -d 文件
xz -d 文件 或 unxz 文件
特点:只能对文件进行压缩,且压缩后源文件消失(其中xz命令可以加上-k参数保留源文件)