linux tar .gz .zip 打包 解压缩 压缩命令

时间:2022-09-02 18:14:06

tar
-c    建立压缩档案  归档文件
-x   解压
-t  查看内容
-r   向压缩归档文件末尾追加文件
-u   更新原压缩包中的文件

这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。

-z    有gzip属性的    gzip压缩文件
-j   有bz2属性的     bzip2压缩文件
-Z   有compress属性的
-v    显示所有过程    显示压缩或解压缩过程 v(view)
-O   将文件解开到标准输出

下面的参数 -f是必须的

-f   使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。




# tar -cfall.tar *.jpg 
这条命令是将所有.jpg的文件打成一个名为all.tar的包。-c是表示产生新的包,-f指定包的文件名 

# tar -rf all.tar *.gif 
这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思 

# tar -uf all.tar logo.gif 
这条命令是更新原来tar包all.tar中logo.gif文件,-u是表示更新文件的意思 

# tar -tf all.tar 
这条命令是列出all.tar包中所有文件,-t是列出文件的意思 

# tar -xfall.tar 
这条命令是解出all.tar包中所有文件,-x是解开的意思 




压缩

tar –cvf jpg.tar *.jpg // 将目录里所有jpg文件打包成tar.jpg
tar –czf jpg.tar.gz *.jpg   // 将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz
tar –cjfjpg.tar.bz2 *.jpg // 将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2
tar –cZf jpg.tar.Z *.jpg   // 将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z
rar a jpg.rar *.jpg  // rar格式的压缩,需要先下载rar for linux
zip jpg.zip *.jpg  // zip格式的压缩,需要先下载zip for linux


解压

tar –xvffile.tar //解压 tar包
tar -xzvffile.tar.gz //解压tar.gz
tar -xjvf file.tar.bz2   //解压 tar.bz2
tar –xZvf file.tar.Z   //解压tar.Z
unrar e file.rar //解压rar
unzip file.zip //解压zip






总结
1、*.tartar –xvf解压
2、*.gzgzip -d或者gunzip 解压
3、*.tar.gz*.tgztar –xzf解压
4、*.bz2 bzip2 -d或者用bunzip2 解压
5、*.tar.bz2tar –xjf解压
6、*.Zuncompress解压
7、*.tar.Ztar –xZf解压
8、*.rarunrar e解压
9、*.zip unzip 解压

例:
tar -cvf /home/abc.tar /home/abc 只打包,不压缩
tar -zcvf /home/abc.tar.gz /home/abc 打包,并用gzip压缩
tar -jcvf /home/abc.tar.bz2 /home/abc 打包,并用bzip2压缩


当然,如果想解压缩,就直接替换上面的命令  tar -cvf  / tar -zcvf  / tar -jcvf 中的“c” 换成“x” 就可以了。


tar xvf filename.tar  或 tar -xvf filename.tar  或tar -zxf filename.tar.gz-C ./file



解压到指定的目录
tar -zxf 
filename.tar.gz  -C ./file


#tar zxvf  /bbs.tar.zip-C /zzz/bbs 

//把根目录下的bbs.tar.zip解压到/zzz/bbs下,前提要保证存在/zzz/bbs这个目录
这个和cp命令有点不同,cp命令如果不存在这个目录就会自动创建这个目录!




用tar命令打包到指定的目录


例:将当前目录下的zzz文件打包到根目录下并命名为zzz.tar.gz
#tar zcvf  /zzz.tar.gz  ./zzz