有时我们明明已经使用gunzip命令解压.gz文件了,可解压生成的文件却依然无法正常读取。如输入命令gunzip HelloWorld.java.gz后,解压生成HelloWorld.java文件,却无法正常使用vi命令进行编辑,打开看到一堆乱码!这是为什么呢?

会出现这种情况,最主要的原因是:由于在linux系统中扩展名可有可无,部分朋友对书写扩展名不是太在意,或者可能是在书写过程中,一时大意,总之,就是书写扩展名时不太规范。要知道,在linux系统中gzip解压命令一般是不单独使用的,而是被命令tar使用参数“z”来调用的。如:tar cvzf HelloWorld.tar.gz HelloWorld.*

大家可以看到这时生成的文件扩展名是.tar.gz,而很多小伙伴在书写时很容易就直接写成了.gz。这样本来是需要使用tar zxvf命令来解压的,却被只用gunzip解压,这就造成前面解压后文件不能正常编辑的情况。

所以前面使用gunzip解压生成的文件其实还不是普通文件,而是使用tar命令生成的一个包文件。这是我们还需继续运行命令:tar xvf HelloWorld.java,可以看到tar解包后的文件就可以正常使用vi命令编辑了。

那么除了猜测,我们还有没有什么好的方法来判断一个文件究竟是什么类型的文件呢?有的,我们可以利用file命令来查看文件类型,从而进一步判断该文件应该使用什么命令来处理。如前面的文件,我们可以运行下面的命令:

file HelloWorld.java

我们可以从输出结果中看到:tar archive,它告诉我们这是一个tar包。这样我们就知道该用tar xvf命令来解包了。大家弄明白了吧!

 

.gz文件解压的更多相关文章

  1. Linux 下面解压.tar.gz 和.gz文件解压的方式

    Linux 下面解压.tar.gz 和.gz文件解压的方式 两种解压方式 1 .tar.gz 使用tar命令进行解压 tar -zxvf java.tar.gz 解压到指定的文件夹 tar -zxvf ...

  2. tar.gz 文件解压

    tar.gz 文件解压 解压缩 file.tar.gz 的过程中出现如下所示问题: tar: 它似乎不像是一个 tar 归档文件 tar: 跳转到下一个头 tar: 由于前次错误,将以上次的错误状态退 ...

  3. linux tar/ tar.gz文件解压

    1.tar 压缩 tar -cvf jpg.tar *.jpg //将目录里所有jpg文件打包成tar.jpg tar -czf jpg.tar.gz *.jpg   //将目录里所有jpg文件打包成 ...

  4. tar.gz 文件解压 (安装 netbean 时会用到)

    sudo tar xvf jdk-7u45-linux-i586.tar.gz -C /usr/lib 参考文章 http://hi.baidu.com/xiaomeng008/item/5e787b ...

  5. linux 安装mysql数据库——tar.gz包解压安装法

    mysql数据库有多种安装方式,本文只介绍在Linux服务器上的tar.gz包解压安装法, 先通过mysql官网或者网络资源下载 mysql-5.7.3-m13-linux-glibc2.5-x86_ ...

  6. Linux:文件解压与压缩

    文件打包与压缩 常见压缩文件格式: |文件后缀名 |说明| |.zip |zip程序打包压缩的文件| |.rar |rar程序压缩的文件| |.7z |7zip程序压缩的文件| |.tar |tar程 ...

  7. 将tgz文件解压到指定目录

    转:http://blog.csdn.net/zhenwenxian/article/details/4400404 tar在linux上是常用的打包.压缩.加压缩工具,他的参数很多,折里仅仅列举常用 ...

  8. [Linux]-Linux常用命令之文件解压

    不压缩方式压缩的文件需要不同的命令来解压缩,下面是Linux的各种文件解压命令. 对于.tar结尾的文件: tar -xf 对于.gz结尾的文件 : gzip -d all.gz gunzip all ...

  9. tar 多文件解压压缩

    tar 多文件解压:因为tar -zxvf一次值能解压一个文件,所以用xargs -n1 .先查找 ls *gz | xargs -n1 tar -zxvf .要解压的文件在list中 cat lis ...

随机推荐

  1. Solution for NULL pointer dereference

    •mmap_min_addr forbids users from mapping low addresses 1. First available in July 2007 2. Several c ...

  2. jquery实现按键增加删除css属性(hide)

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. JavaScript 中的 Function.prototype.bind() 方法

    转载自:https://www.cnblogs.com/zztt/p/4122352.html Function.prototype.bind()方法 bind() 方法的主要作用就是将函数绑定至某个 ...

  4. JetbrainsCrack-4.2-release-enc.jar 激活补丁包

    http://wangshuo.jb51.net:81/201904/tools/JetbrainsCrack_jb51.rar ps:这里提供jetbrainscrack-2.10.jar.jetb ...

  5. Java与C++对比

    Java的优势 Java是纯面向对象的,能够反映一切生活中的对象,编写程序更为容易. 平台无关性,“一次编译,到处运行”.(面试:为什么? 因为Java对每种数据类型分配的长度是固定的,但C++不是) ...

  6. CF960G Bandit Blues 第一类斯特林数+分治+FFT

    题目传送门 https://codeforces.com/contest/960/problem/G 题解 首先整个排列的最大值一定是 \(A\) 个前缀最大值的最后一个,也是 \(B\) 个后缀最大 ...

  7. Java遍历集合的几种方法

    遍历集合的几种方法 用不同的方法遍历集合. public interface Iterator:对Collection进行迭代的迭代器.迭代器取代了Java Collections FrameWork ...

  8. 网络编程和并发:1.简述 OSI 七层协议

    1. 概念 Open System Interconnection : 开放互联系统 2. 图示 注:图片来源:https://www.cnblogs.com/maybe2030/p/4781555. ...

  9. 51nod 1490: 多重游戏(树上博弈)

    题目链接 该题实质上是一个树上博弈的问题.要定义四种状态——2先手必胜 1先手必败 3可输可赢 0不能控制 叶子结点为先手必败态: 若某结点的所有儿子都是先手必败态,则该结点为先手必胜态: 若某结点的 ...

  10. spark streaming简单示例

    <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://mave ...