[Linux] 解压tar.gz文件,解压部分文件

遇到数据库无法查找问题原因,只能找日志,查找日志的时候发现老的日志都被压缩了,只能尝试解压了

 

数据量比较大,只能在生产解压了,再进行查找

文件名为*.tar.gz,自己博客以前记录过解压方法:

http://www.cnblogs.com/garinzhang/archive/2013/04/23/3037147.html

使用tar –zxvf *.tar.gz无法解压,明明好好的tar.gz文件能这样解压的,为什么不能解压?

 

后来想了想,是不是先要解压*.gz文件,使用gunzip *.tar.gz进行解压成功,解压出来的文件名为:*.tar

由于日志文档相关多,占用空间比较大,正在使用tar xvf *.tar进行解压,发现解压出来好多文件,而且时间很长,最终决定去中止解压,心里想了想,是不是有方法只解压一部分文件呢

 

于是搜索了一下,发现确实有此方法:

http://blog.chinaunix.net/uid-10697776-id-2935568.html

http://bbs.chinaunix.net/thread-1770627-1-1.html

文章中说的,可以使用以下方法查看压缩文件里面的内容:

tar –tzvf *.tar.gz   (由于我此时是.tar文件,所以使用tar -tvf即可),查看确实能查看压缩文件里的内容

使用以下方法进行解压:

解压单个文件:

tar –zxvf *.tar.gz /test/filename.txt

解压多个文件:

tar –zxvf *.tar.gz /test/filenam*

解压到指定目录:

tar –zxvf *.tar.gz /text/filename.txt –C /opt/targetfolder

 

在我们生产上无法执行上面这些命令,查找相关文档后发现是由于AIX跟其他版本的Linux不一样导致:

0. 怕生产上解压文件,将磁盘挤爆,先查询一下磁盘情况(使用df -g,以GB方式显示,-m以MB形式显示),显示还有63GB:

efbill_2:[/opt/oecs-g2/log/backup/compressed]#df -g
文件系统           GB 块      可用 %Used    Iused %Iused     安装于
/dev/hd4            5.00      4.52   10%    10570     1% /
/dev/hd2           48.00     45.26    6%    57427     1% /usr
/dev/hd9var        24.50     23.90    3%     8549     1% /var
/dev/hd3            5.00      4.84    4%      348     1% /tmp
/dev/fwdump         1.00      1.00    1%        6     1% /var/adm/ras/platform
/dev/hd1            5.00      5.00    1%       14     1% /home
/dev/hd11admin       5.00      5.00    1%        5     1% /admin
/proc                  -         -    -         -     -  /proc
/dev/hd10opt      119.50     63.32   48%    22030     1% /opt

1. 首先查看linux版本

efbill_2:[/opt/oecs-g2/log/backup/compressed]#cat /proc/version
Aug  6 2010
13:36:14
1032A_61L
@(#) _kdb_buildinfo unix_64 Aug  6 2010 13:36:14 1032A_61L
efbill_2:[/opt/oecs-g2/log/backup/compressed]#uname -a
AIX
efbill-2 1 6 00F764BD4C00

2. 搜索关键字:aix tar.gz 解压,找到答案:

http://blog.sina.com.cn/s/blog_4b055d6b0100s711.html

在AIX上最常见的压缩文件就是.tar檔了,而除了tar文件以外,有时会遇到数据是用其它的压缩文件格式,所以偶顺手整理了一些常见的压缩文件格式,在AIX要怎么解压缩 :

*.tar.Z file format

o 压缩§ # compress filename.tar

o 解压§ # zcat filename.tar.Z | tar -xvf -

*.tar.gz file format

o 压缩§ # tar cvf - folder | gzip > filename.tar.gz

o 解压§ # gunzip -c filename.tar.gz | tar -xvf -

*.zip file format (注1)

o 解压§ # unzip filename.zip

*.tgz file format

o 解压§ # gzip -d filename.tgz | tar -xvf -

注1 : 注意,AIX预设并没有装unzip的程序,可以去这边抓下来安装。

3. 解压成功,再次需要尝试是否能只解压一部分文件出来

结合上面部分解压文件,尝试过好几次终于找出办法:

1. 显示出所有文件:

efbill_2:[/opt/oecs-g2/log/backup/compressed]#gunzip -c 20140401_09.tar.gz | tar –tvf -

2. 解压出部分文件:

单个文件:

efbill_2:[/opt/oecs-g2/log/backup/compressed]#gunzip -c 20140401_09.tar.gz | tar -xvf - 20140407110630/billing.log.40

3. 多个文件:貌似无法按照前面的办法解压,反正目地已经达到了

[Linux] 解压tar.gz文件,解压部分文件,布布扣,bubuko.com

时间: 2024-12-24 12:53:54

[Linux] 解压tar.gz文件,解压部分文件的相关文章

解压tar.gz文件报错gzip: stdin: not in gzip format解决方法

解压tar.gz文件报错gzip: stdin: not in gzip format解决方法 在解压tar.gz文件的时候报错 1 2 3 4 5 [[email protected] Downloads]$ tar -zxvf clion-141.351.4.tar.gz gzip: stdin: not in gzip format tar: Child returned status 1 tar: Error is not recoverable: exiting now 原来原因是这个

源码包的解压 .tar.gz /.tar.bz2的解压

解压方式如下: .tar.gz     格式解压为          tar   -zxvf   xx.tar.gz .tar.bz2   格式解压为          tar   -jxvf    xx.tar.bz2 源码包的解压 .tar.gz /.tar.bz2的解压,布布扣,bubuko.com

windows下解压tar.gz文件

最近做的一个项目,使用小工具代替人工提交到网站并获取结果. 在开发过程中碰到了一个问题. 网站返回的格式为tar.gz文件.第一个想到的方式是直接用第三方工具,使用的是7z.但用户那里使用的系统为win10,不以管理员身份运行会没有调用第三方工具的权限.遂决定用库解决该问题. 这里记录下windows下解压tar.gz的一些问题. 其实tar.gz是两次封装. 第一次是tar打包(这里不会压缩,文件反而会更大),第二次是gz文件的算法压缩. 解压GZ文件使用的是zlib库. 这里说一下zlib的

linux下解压.tar.gz .tar.bz2

从网络上下载到的源码包, 最常见的是 .tar.gz 包, 还有一部分是 .tar.bz2包要解压很简单 :.tar.gz     格式解压命令为          tar   -zxvpf   xx.tar.gz.tar.bz2   格式解压命令为          tar   -jxvpf    xx.tar.bz2 //p参数可以保留原文件权限(很重要)

Linux下安装tar.gz类型的jdk,并配置环境变量

近期因要学习一门技术,必须在Linux下运行,故开始学习如何使用Linux. 在安装jdk时出现了困难,环境变量配置不成功,花了一天时间才搞定,特分享出来,供大家参考. Linux下安装jdk,步骤如下 1:下载jdk包:本章使用的为后缀为tar.gz的文件(不需要安装),如jdk-7u67-linux-i586.tar.gz 2: 把jdk文件保存至Linux下目录:通过控制台,使用mkdir命令生成user/java目录,并把文件放入其下 3:解压tar.gz文件:通过控制台,进入user/

[转帖]为何 linux 要用 tar.gz,而不用 7z 或 zip?

为何 linux 要用 tar.gz,而不用 7z 或 zip? http://embeddedlinux.org.cn/emb-linux/entry-level/201908/13-8776.html 原来还有这么一个历史.. 因为 7z 和 zip 压缩格式都不能保留 unix 风格的文件权限,比如解压出个可执行文件要重新 chmod chown 才能恢复正常.而 tar 格式可以.而 tar 本身不提供压缩,无非就是把包括所有文件的內容和权限拼成一个文件而己,所以用另外如 gzip 格式

linux 安装jdk-7u45-linux-x64.tar.gz

1.官网下载jdk-7u45-linux-x64.tar.gz 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 2.tar解压:tar -xzvf jdk-7u45-linux-x64.tar.gz 一般安装在/usr/local/目录下 3.配置环境变量: <span style="white-space:pre"> </span>

linux 下 jdk tar.gz 包安装方法

JDK安装 tar.gz为解压后就可使用的版本,这里我们将jdk-7u3-linux-i586.tar.gz解压到/usr/local/下. 1.解压 解压到当前目录:$ tar -zxvf /opt/setup/jdk-7-ea-bin-b145-linux-i586-07_jun_2011.tar.gz 2.环境配置 ① $sudo vi /etc/profile ② 在末尾行添加 #set java environment JAVA_HOME=/usr/local/jdk1.7.0 CLA

使用tar命令批量解压*.tar.gz文件

如何将/usr/local/src 下的所有*.tar.gz 文件批量解压到/usr/local/soft目录下 首先进入到/usr/local/soft ...#cd /usr/local/soft ...#ls /usr/local/usr/*.tar.gz | xargs -n1 tar xzvf