tar
打包:就是将多个文件、文件夹放在一起,方便管理,它的文件大小为包中文件的总和(打包又被称为归档)
压缩:通过某种算法减小文件所占的存储空间,从而可以在文件传输的过程中减少网络流量
对于打包命令tar,它的参数如下
-x 解压缩、提取包中的内容
-t 查看包中的内容
-c 建立一个包
-v 显示打包和拆包的过程
-f 建包时,为所建的包指定包名,解包时,所指定报包名,操作包时,指定包名,-f是tar的必选参数,放在所有参数的最右边
-r:向tar中增加文件或目录
-u:更新tar中文件或目录
-z:是否同时具有gz属性
-C:指定解包目录
–delete:从包中删除某些文件
把hello.txt、abc.txt、test目录打成一个名为mytar.tar的包
tar -cvf mytar.tar hello.txt abc.txt test
-c:创建一个包,把hello.txt、abc.txt、test目录放入到这个包中
-v:显示打包的过程(也就是显示哪些文件和目录被放入了这个包中)
-f:为创建的这个包取一个名字
查看mytar.tar包中有哪些文件和文件夹
tar -tf mytar.tar
-t:查看包中有哪些文件
-f:指定包
将mytar.tar包解到当前目录下
tar -xvf mytar.tar
-x:解包
将mytar.tar解包到/opt目录下
tar -xvf mytar.tar -C /opt
-x:解包
-C:指定解包后的存放目录
向mytar.tar中增加一个ccc.txt文件
tar -rf mytar.tar ccc.txt
-r:增加
更新mytar.tar中hello.txt
tar -uf mytar.tar hello.txt
-u:跟新mytar.tar中的文件hello.txt
若mytar.tar中没有hello.txt文件,那么则向mytar.tar中添加hello.txt
将hello.txt、abc目录打包并压缩
tar -zcvf mytar.tar.gz hello.txt abc
-c:创建一个包并把hello.txt、abc目录放入包中
-z:压缩
把mytar.tar.gz解压并解包到/opt目录下
tar -xvf mytar.tar.gz
-x:解包
删除mytar.tar中的hello.txt文件
tar --delete -vf mytar.tar hello.txt
gzip与gunzip
gzip 文件
压缩一个文件
gzip -r 目录
加上-r参数,目录中的每一个文件打成一个对应的压缩包
gunzip 文件
解压文件
gunzip -r 目录
加上-r参数,会解压目录中所有的压缩包
zip与unzip
zip hello hello.txt
在当前目录下创建一个名为hello.zip的压缩包,把hello.txt放入到当中
zip /var/hello /var/test/hello.txt
将hello.txt压缩好后,放在/var下,命名为hello
zip -r mytest /var/test
将test文件夹压缩(如果不加r,那么只会把test目录下的文件及文件夹压缩,不会递归压缩)
unzip -v 压缩文件
查看.zip的压缩文件中有哪些文件
zip -d 压缩文件 文件
删除压缩文件中的文件
zip -g 压缩文件 文件
向压缩文件中添加文件
zip -m 压缩文件 文件
向压缩文件中添加文件,添加后删除文件(相当于移动,-g相当于复制)
unzip 压缩文件
将压缩文件解压到当前目录下
unzip 文件 -d 路径
通过-d参数,指定解压到哪个目录