温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

tar,gunzip,gzip,unzip和zgrep 命令的差别是什么

发布时间:2021-11-11 17:51:40 来源:亿速云 阅读:294 作者:柒染 栏目:云计算

这期内容当中小编将会给大家带来有关tar,gunzip,gzip,unzip和zgrep 命令的差别是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

1:tar
  tar [-cxtzjvfpPN] 文件和目录 ....
  参数:
  -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)还要新的才会被打包进新建的文件中!
  --exclude FILE:在压缩的过程中,不要将 FILE 打包!
  范例:
  范例一:将整个 /etc 目录下的文件全部打包成为 /tmp/etc.tar
  [root@linux ~]# tar -cvf /tmp/etc.tar /etc
  范例二:查阅上述 /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 和管线命令啦!

  2:gunzip
  gunzip(gnu unzip)
  功能说明:解压文件。
  语  法:gunzip [-acfhlLnNqrtvV][-s ][文件...] 或 gunzip [-acfhlLnNqrtvV][-s ][目录]
  补充说明:gunzip是个使用广泛的解压缩程式,他用于解开被gzip压缩过的文件,这些压缩文件预设最后的扩展名为".gz"。
  事实上gunzip就是gzip的硬连接,因此不论是压缩或解压缩,都可通过gzip指令独立完成。
  参  数:
 -a或--ascii  使用ASCII文字模式。
 -c或--stdout或--to-stdout  把解压后的文件输出到标准输出设备。
 -f或-force  强行解开压缩文件,不理会文件名称或硬连接是否存在及该文件是否为符号连接。
 -h或--help  在线帮助。
 -l或--list  列出压缩文件的相关信息。
 -L或--license  显示版本和版权信息。
 -n或--no-name  解压缩时,若压缩文件内含有远来的文件名称及时间戳记,则将其忽略不予处理。
 -N或--name  解压缩时,若压缩文件内含有原来的文件名称及时间戳记,则将其回存到解开的文件上。
 -q或--quiet  不显示警告信息。
 -r或--recursive  递归处理,将指定目录下的所有文件及子目录一并处理。
 -S或--suffix  更改压缩字尾字符串。
 -t或--test  测试压缩文件是否正确无误。
 -v或--verbose  显示指令执行过程。
 -V或--version 显示版本信息。

  3:gzip
  gzip命令
  关键词: gzip                                          
  gzip命令
  减少文件大小有两个明显的好处,一是能减少存储空间,二是通过网络传输文件时,能减少传输的时间。
  gzip是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。
  语法:gzip [选项] 压缩(解压缩)的文件名
  各选项的含义:
  -c 将输出写到标准输出上,并保留原有文件。
  -d 将压缩文件解压。
  -l 对每个压缩文件,显示下列字段:
  压缩文件的大小
  未压缩文件的大小
  压缩比
  未压缩文件的名字
  -r 递归式地查找指定目录并压缩其中的所有文件或是解压缩。
  -t 测试,检查压缩文件是否完整。
  -v 对每一个压缩和解压的文件,显示文件名和压缩比。
  -num 用指定的数字num调整压缩的速度,-1或--fast表示最快压缩方法(低压缩比),-9或--best表示最慢压缩方法(高压缩比)。
  系统缺省值为6。
  假设一个目录/home下有文件mm.txt、sort.txt、xx.com。
  例1:把/home目录下的每个文件压缩成.gz文件。
  $ cd /home
  $ gzip *
  $ ls
  m.txt.gz sort.txt.gz xx.com.gz
  例2:把例1中每个压缩的文件解压,并列出周详的信息。
  $ gzip -dv *
  mm.txt.gz 43.1%-----replaced with mm.txt
  sort.txt.gz 43.1%-----replaced with sort.txt
  xx.com.gz 43.1%-----replaced with xx.com
  $ ls
  mm.txt sort.txt xx.com
 
  例3:周详显示例1中每个压缩的文件的信息,并不解压。
  $ gzip -l *
  compressed uncompr. ratio uncompressed_name
  277 445 43.1% mm.txt
  278 445 43.1% sort.txt
  277 445 43.1% xx.com
  $ ls
  mm.txt.gz sort.txt.gz xx.com.gz
  例4:压缩一个tar备份文件,如usr.tar,此时压缩文件的扩展名为.tar.gz
  $ gzip usr.tar
  $ ls
  usr.tar.gz
#########################################################################
  4:unzip命令
  用MS 视窗系统下的压缩软件winzip压缩的文件怎么在Linux系统下展开呢?能用unzip命令,该命令用于解扩展名为.zip的压缩文件。
  语法:unzip [选项] 压缩文件名.zip
  各选项的含义分别为:
   -x 文件列表 解压缩文件,但不包括指定的file文件。
   -v 查看压缩文件目录,但不解压。
   -t 测试文件有无损坏,但不解压。
   -d 目录 把压缩文件解到指定目录下。
   -z 只显示压缩文件的注解。
   -n 不覆盖已存在的文件。
   -o 覆盖已存在的文件且不需求用户确认。
   -j 不重建文件的目录结构,把所有文件解压到同一目录下。
   例1:将压缩文件text.zip在当前目录下解压缩。
   $ unzip text.zip
 
   例2:将压缩文件text.zip在指定目录/tmp下解压缩,如果已有相同的文件存在,需求unzip命令不覆盖原先的文件。
   $ unzip -n text.zip -d /tmp
 
   例3:查看压缩文件目录,但不解压。
    $ unzip -v text.zip

  6:zgrep命令
   这个命令的功能是在压缩文件中寻找匹配的正则表达式,用法和grep命令相同,只不过操作的对象是压缩文件。
   如果用户想看看在某个压缩文件中有没有某一句话,便可用zgrep命令。

上述就是小编为大家分享的tar,gunzip,gzip,unzip和zgrep 命令的差别是什么了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI