Linux文件归档和tar命令的使用

在学习Linux的过程当中,安装源码包,文件归档都是需要熟练运用tar命令。(学了这么久可能就是tar命令觉得最装13了。哈哈)以下我就针对我自身在学习,生产过程中经常使用的归档命令进行整理。

tar命令的语法规则: tar 选项 包的名称 目标文件/目录

最初学习到这个命令的时候还是在大二的时候,老师给我发的一个tar文件。之后丢给我一句话,使用help看文档解压开。自然,这个文档也是比较好懂(老师还是不会特意为难我滴)。

Examples:
  tar -cf archive.tar foo bar  # Create archive.tar from files foo and bar.
  tar -tvf archive.tar         # List all files in archive.tar verbosely.
  tar -xf archive.tar          # Extract all files from archive.tar.

看到这样的例子简直亲切,一目了然。 

虽然我已经明白,但是万一傻逼了呢。我还是要解释一下的。

当文件名为fileA时 创建一个归档文件 tar -cf file_nam.tar fileA , 当然这个命令是可以连续归档多个文件的,比如说: tar -cf file_name.tar fileA fileB... 。这个 c 表示的是创建 f表示的是指定的归档文件的名称(原文是这样的:use archive file or device ARCHIVE,使用归档文件或者设备归档)。

有上面的创建一个归档文件的基础下面就好解释了,tar -tvf 就是列出所有tar文件的详细内容。 v是verbose的意思。 这个tar -xf file_name.tar 是解压的命令。这个很容易想到解压的文件是放到哪里了呢? 不指定的是当前目录这是肯定的,如果要想指定的话那么就应该使用 tar -xf file_name.tar -C PATH 这个C是大写的C。还要说明一点的是,我们也可以 tar -xvf 这都是没关系的。 表示的是显示归档过程的详细信息。

在Linux中tar文件并不是常见(至少我只碰到我老师给看得那一次),也不是压缩效果最好的(毕竟只是叫归档), 比较常见的就是 gzip 包。文件名称是这样的:gzipPackage.tar.gz。用来处理这个包的命令很简单。毕竟已经会归档了好嘛。命令是这样的:

tar -zcf gzipPackage.tar.gz fileA fileB ,很简单 就是增加了一个z。z代表的是-gzip -ungzip。就是这么简单暴力。 显而易见 解压的命令就可以是这样的 tar -zxvf gzipPackage.tar.gz -C PATH。

自然gzip比较常见但是依旧不是压缩最厉害的。更厉害的bzip2算是一个了。 文件格式是 bzip2Package.tar.bz2。 从上面总结出的规律来看。这个命令肯定是把z换成的了其他字母。对!!

tar -jcvf  是压缩 。解压缩是 tar -jxvf;

上面的三种算是我经常看到的。哦,还有一种 是内核使用的包格式 xzPackage.tar.xz 使用的命令有一点点的不同。xz -d xzPackage.tar.zc ---> xzPackage.tar ---> tar -xf xzPackage.tar 。

这些算是Linux上特有的吧,而Windows上经常看到便是zip包。我们的大Linux也是能够解压的。

zip -r zipPackage.zip fileA fileB 压缩

unzip zipPackage -d PATH 解压缩 。

补充: xz -d 也可以直接使用 unxz

一点的积累。发现自己脑袋没有别人说的那么小。

你可能感兴趣的:(linux)