Linux-压缩与打包
zip格式
压缩
zip 压缩后的文件名 源文件名
其他选项
-r #压缩目录
不加则只压缩目标目录下的所有文件加上二级目录本身,二级目录下的文件不会被压缩。例如:zip learn.zip learn/*
解压
unzip FileName #自动解压到当前所在目录
除本文中zip以外的压缩工具都不可压缩目录。
例子:
压缩
[root@626 ~]# zip 1.txt.zip 1.txt
[root@626 ~]# ls
[root@626 ~]# 1.txt.zip 1.txt
解压
[root@626 ~]# unzip
gz格式
压缩
gzip src_file
解压
gunzip #解压后会自动删除压缩包
gzip -d 压缩包名 #同样删除压缩包
其他选项
-l #显示压缩包内容
例子:
#[root@626 ~]# gzip 1.txt
#[root@626 ~]# ls
#[root@626 ~]# 1.txt
它不支持目录压缩,还有压缩文件后源文件会删除。
如果压缩目录的话目录下的所有子文件也会单独成一个压缩包,压缩的归档文件,只能压缩一个文件(bzip2一样),压缩后会自动删除文件。
bz2格式
压缩
bzip2 [-z] src_file #-z是压缩,默认就是-z,加不加一样。
解压
bzip2 -d 压缩文件
不可以压缩目录,同样删除源文件,如果解压或压缩保留源文件可用以下选项。
-k #保留压缩文件
例子:
bunzip2 -k 压缩文件
xz格式
压缩
xz src_file #默认为-z
解压
xz -d file
其他选项
-l #显示出压缩文件列表内容
也不可压缩目录
tar归档
归档是把多个文件打包成一个文件,但不减少文件体积,可以打包目录与文件,后缀是.tar。
打包
tar -cvf 归档名 归档的文件
几个选项
-c #创建归档
-v #显示详细信息
-f #压缩或解压创建的归档文件名,要注意-f后面一定是跟上文件名如果是其他选项会报错。
#例如:`tar -cfv gzip.tar gziplearning`它会把v当做文件名,
#而把`gzip.tar gziplearning`当做要压缩的对象。
-x #解压
-C #指定解压目录
-t #查看tar包内文件
--exclude 要排除的打包文件
-z #调用gzip压缩
-j #调用bzip2压缩
-J #调用xz压缩
例子:
1.打包
[root@626 ~] #tar -cvf 1.txt 1.tar
[root@626 ~]# ls
[root@626 ~]# 1.txt 1.tar
查看内容
[root@626 ~]# tar -tf gzip.tar #-t查看tar包内容列表,-f指定查看文件的名字
解包
[root@626 ~]# tar -xf gzip.tar
2.采用先打包后压缩的方式压缩文件
[root@626 ~]# tar -cvzf text_Path.tar.gz 1.txt
#-z采用gzip方式压缩,-j是bzip2,-J是xz。
解压缩
[root@626 ~]# tar -xzvf text_Path.tar.gz 1.txt
#不加上压缩方式均可解压(bzip2,gzip,xz已测试)
[root@626 ~]# tar -xf gzip.tar.gz
排除要打包的文件
[root@626 ~]# ls
1.txt anaconda-ks.cfg
[root@626 ~]# tar --exclude 1.txt -cvjf 1sadf.tar.bz2 ./*
./anaconda-ks.cfg
[root@626 ~]# ls
1sadf.tar.bz2 1.txt anaconda-ks.cfg
[root@626 ~]# tar -tf 1sadf.tar.bz2
./anaconda-ks.cfg
查看压缩包内文本文件内容
zcat #查看zip
bzcat #查看bzip2
xzcat #查看xz
- 上一篇: Linux-软件包管理之YUM
- 下一篇: Linux-进程