`
zhengdl126
  • 浏览: 2511877 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类

打包解压(tar,uzip)命令实用总汇

阅读更多

 

(.zip)  zip unzip

 

(.gz) gzip gunzip

 

(.bz2) bzip2 bunzip2   -j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩

 

(.Z) compress uncompress

 

(.tar.gz) tar zxvf xvf     -z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩

 

(.tar) tar xvf  cvf

 

(.bin) 源程序编译后的机器语言   #chmod u+x x.bin  # ./x.bin

 

 

bunzip2 Python-3.1.2.tar.bz2
tar -xvf Python-3.1.2.tar

 

 

--------tar参数:

参数:
-c :建立一个压缩文件的参数指令(create 的意思);
-x :解开一个压缩文件的参数指令!
-t :查看 tarfile 里面的文件!
特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!因为不可能同时压缩与解压缩。
-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩
-j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩
-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!
-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!
例如使用『 tar -zcvfP tfile sfile』就是错误的写法,要写成『 tar -zcvPf tfile sfile』才对喔!
-p :使用原文件的原来属性(属性不会依据使用者而变)
-P :可以使用绝对路径来压缩!
-N :比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中!

 

 

追加打包文件:

tar rvf file.tar file8

 

 如果想查看在一个档案中存储着哪些文件,可以使用tar命令和t选项。下面命令列出所有存储在myarch.tar档案中的文件:
    #tar tf myarch.tar

 

tar -tf 1.tar|grep '1\.txt'

 

 

tar xvf 1.rar  查看打包文件

tar xvf 1.rar 1.txt 解压某个文件

 

tar zxvf lua.tar.gz -C /tmp/lua/lua/  解压到某个已存在的目录下

 

 

先压缩(压缩包内包含主目录webauth)

tar zcvf webauth.tar.gz webauth/

再解压

tar zxvf webauth.tar.gz -C /var/www/

 

剔除目录和文件log

 tar zcvf nagios.tar.gz nagios/ --exclude nagios/share/perfdata --exclude "*.log"

 

#根据文件列表压缩变更升级包
tar -czv -T $svn_details_log -f $tar_bak_file

 

 

 

拼接两个归档文件(将file2.tar的内容合并到file1.tar):

tar -Af file1.tar file2.tar

 

 

从归档中删除文件(--delete):

tar -f archive.tar --delete file1 file2

tar --delete --file archive.tar [FILE LIST]

 

 

归档时排除部分文件

tar -cf arch.tar * --exclude "*.txt"

归档时排除文件列表

tar -cf rch.tar -x list

排除版本控制目录

tar --exclude-vcs -czvvf source_code.tar.gz eye_of_gnome_svn

 

 

 

------------------------- unzip


进入/sc/目录,压缩所有目录文件;

cd /tmp/sc/

#解压到当前目录

unzip -o sc.zip  

 

 

 

功能说明:解压缩zip文件

语  法:unzip [-cflptuvz][-agCjLMnoqsVX][-P <密码>][.zip文件][文件][-d <目录>][-x <文件>] 或 unzip [-Z]

补充说明:unzip为.zip压缩文件的解压缩程序。

参  数:
-c 将解压缩的结果显示到屏幕上,并对字符做适当的转换。
-f 更新现有的文件。
-l 显示压缩文件内所包含的文件。
-p 与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换。
-t 检查压缩文件是否正确。
-u 与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其他文件解压缩到目录中。
-v 执行是时显示详细的信息。
-z 仅显示压缩文件的备注文字。
-a 对文本文件进行必要的字符转换。
-b 不要对文本文件进行字符转换。
-C 压缩文件中的文件名称区分大小写。
-j 不处理压缩文件中原有的目录路径。
-L 将压缩文件中的全部文件名改为小写。
-M 将输出结果送到more程序处理。
-n 解压缩时不要覆盖原有的文件。
-o 不必先询问用户,unzip执行后覆盖原有文件
-P<密码> 使用zip的密码选项。
-q 执行时不显示任何信息。
-s 将文件名中的空白字符转换为底线字符。
-V 保留VMS的文件版本信息。
-X 解压缩时同时回存文件原来的UID/GID。
[.zip文件] 指定.zip压缩文件。
[文件] 指定要处理.zip压缩文件中的哪些文件。
-d<目录> 指定文件解压缩后所要存储的目录。
-x<文件> 指定不要处理.zip压缩文件中的哪些文件。
-Z unzip -Z等于执行zipinfo指令

 

 


------------------------------tar调用gzip------- 参数-z
  gzip是GNU组织开发的一个压缩程序,.gz结尾的文件就是gzip压缩的结果。与gzip相对的解压程序是gunzip。tar中使用-z这个参数来调用gzip。下面来举例说明一下:
  # tar zcvf all.tar.gz *.jpg这条命令是将所有.jpg的文件打成一个tar包,并且将其用gzip压缩,生成一个gzip压缩过的包,包名为all.tar.gz
  # tar zxvf all.tar.gz这条命令是将上面产生的包解开。




---------------------tar调用bzip2--------- 参数-j


  bzip2是一个压缩能力更强的压缩程序,.bz2结尾的文件就是bzip2压缩的结果。与bzip2相对的解压程序是bunzip2。tar中使用-j这个参数来调用gzip。下面来举例说明一下:
  # tar jcvf all.tar.bz2 *.jpg这条命令是将所有.jpg的文件打成一个tar包,并且将其用bzip2压缩,生成一个bzip2压缩过的包,包名为all.tar.bz2
  # tar jxvf all.tar.bz2这条命令是将上面产生的包解开。


-------------------------tar调用compress      参数-Z


  compress也是一个压缩程序,但是好象使用compress的人不如gzip和 bzip2的人多。.Z结尾的文件就是bzip2压缩的结果。与compress相对的解压程序是uncompress。tar中使用-Z这个参数来调用gzip。下面来举例说明一下:
  # tar -cZf all.tar.Z *.jpg这条命令是将所有.jpg的文件打成一个tar包,并且将其用compress压缩,生成一个uncompress压缩过的包,包名为all.tar.Z
  # tar -xZf all.tar.Z这条命令是将上面产生的包解开

 

 

 

 

 

 

---------------------删除 tar包

 
清理临时文件的命令如下:
make clean
如果要卸载,则执行如下的命令。
make uninstall

 

 


*.tar.gz/*.bz2形式的二进制软件包是用tar工具来打包、用gzip/bzip2压缩的,安装时直接解包即可。对于解压后只有单一目录的软件,卸载时用命令“rm -rf 软件目录名”;如果解压后文件分散在多处目录中,则必须一一手动删除(稍麻烦), 想知道解压时向系统中安装了哪些文件,可以用命令“tar ztvf *.tar.gz”/“tar ytvf *.bz2”获取清单 。tar的参数z是调用gzip解压,x是解包,v是校验,f是显示结果 ,y是调用bzip2解压,t是列出包的文件清单 。更多的参数请参看手册页:man tar。

 

 

 

 

 

tar [-cxtzjvfpPN] 文件与目录 ....

--exclude FILE:在压缩的过程中,不要将 FILE 打包!

范例一:将整个 /etc 目录下的文件全部打包成为 /tmp/etc.tar
[root@linux ~]# tar -cvf /tmp/etc.tar /etc <==仅打包,不压缩
[root@linux ~]# tar -zcvf /tmp/etc.tar.gz /etc <==打包后,以 gzip 压缩
[root@linux ~]# tar -jcvf /tmp/etc.tar.bz2 /etc <==打包后,以 bzip2 压缩
# 特别注意,在参数 f 之后的文件档名是自己取的,我们习惯上都用 .tar 来作为辨识。
# 如果加 z 参数,则以 .tar.gz 或 .tgz 来代表 gzip 压缩过的 tar file

# 如果加 j 参数,则以 .tar.bz2 来作为附档名
# 上述指令在执行的时候,会显示一个警告讯息:
# 『tar: Removing leading `/' from member names』那是关於绝对路径的特殊设定。

范例二:查阅上述 /tmp/etc.tar.gz 文件内有哪些文件?
[root@linux ~]# tar -ztvf /tmp/etc.tar.gz
# 我们使用 gzip 压缩,所以要查阅该 tar file 内的文件时,就得要加上 z 这个参数!这很重要!

范例三:将 /tmp/etc.tar.gz 文件解压缩在 /usr/local/src 底下
[root@linux ~]# cd /usr/local/src
[root@linux src]# tar -zxvf /tmp/etc.tar.gz
# 在预设的情况下,我们可以将压缩档在任何地方解开的!以这个范例来说,我先将工作目录变换到 /usr/local/src 底下,并且解开 /tmp/etc.tar.gz ,则解开的目录会在 /usr/local/src/etc.另外,如果您进入 /usr/local/src/etc,则会发现,该目录下的文件属性与 /etc/ 可能会有所不同

范例四:在 /tmp 底下,我只想要将 /tmp/etc.tar.gz 内的 etc/passwd 解开而已
[root@linux ~]# cd /tmp
[root@linux tmp]# tar -zxvf /tmp/etc.tar.gz etc/passwd
# 我可以透过 tar -ztvf 来查阅 tarfile 内的文件名称,如果单只要一个文件,就可以透过这个方式来下达!注意到! etc.tar.gz 内的根目录 / 是被拿掉!

范例五:将 /etc/ 内的所有文件备份下来,并且保存其权限!
[root@linux ~]# tar -zxvpf /tmp/etc.tar.gz /etc
# 这个 -p 的属性是很重要的,尤其是当您要保留原本文件的属性时!

范例六:在 /home 当中,比 2005/06/01 新的文件才备份
[root@linux ~]# tar -N '2005/06/01' -zcvf home.tar.gz /home

范例七:我要备份 /home, /etc ,但不要 /home/dmtsai
[root@linux ~]# tar --exclude /home/dmtsai -zcvf myfile.tar.gz /home/* /etc

范例八:将 /etc/ 打包后直接解开在 /tmp 底下,而不产生文件!
[root@linux ~]# cd /tmp
[root@linux tmp]# tar -cvf - /etc | tar -xvf -
# 这个动作有点像是 cp -r /etc /tmp 啦~依旧是有其有用途的!
# 要注意的地方在於输出档变成 - 而输入档也变成 - ,又有一个 | 存在~
# 这分别代表 standard output, standard input 与管线命令!
# 这部分我们会在 Bash shell 时,再次提到这个指令跟大家再解释!

 

 

 

 

 

 

 


-------------------------------------------gzip, zcat 命令
[root@linux ~]# gzip [-cdt#] 档名
[root@linux ~]# zcat 档名.gz
参数:
-c :将压缩的资料输出到萤幕上,可透过资料流重导向来处理;
-d :解压缩的参数;
-t :可以用来检验一个压缩档的一致性~看看文件有无错误;
-# :压缩等级,-1 最快,但是压缩比最差、-9 最慢,但是压缩比最好!预设是 -6

 

 

 

 

 

[root@linux ~]# cd /tmp
[root@linux tmp]# cp /etc/man.config .
[root@linux tmp]# gzip man.config
此时 man.config 会变成 man.config.gz !

 

 

 

gzip -d xiaobear_dy199com.sql.gz

用最佳的压缩比压缩,并保留原本的文件

 

 

 

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics