zoukankan      html  css  js  c++  java
  • 操作系统【10】 Linux 打包命令详解

    从上文我们可以知道,linux系统下的的归档命令有2个,分别是他人和dd(相对而言tar使用更加广泛)。下面,我们更加详细的了解归档的两种命令。

    Tar命令可以将许多文件一起保存到一个单独的磁盘中进行归档。他还能从归档文件中还原所需的文件,这个过程为解打包。该文件都是以“.tar”结尾的。tar命令的基本格式为:[root@localhost ~]#tar [选项] 源文件或目录 含义详解如下图所示:

    选项

    含义

    -c

    将多个文件或目录进行打包。

    -A

    追加 tar 文件到归档文件。

    -f 包名

    指定包的文件名。包的扩展名是用来给管理员识别格式的,所以一定要正确指定扩展名;

    -v

    显示打包文件过程;

    需要注意的是,在使用 tar 命令指定选项时可以不在选项前面输入“-”。例如,使用“cvf”选项和 “-cvf”起到的作用一样。

    例如:打包文件和目录。

    [root@localhost ~]# tar -cvf anaconda-ks.cfg.tar anaconda-ks.cfg

    #把anacondehks.cfg打包为 anacondehks.cfg.tar文件

    选项 "-cvf" 一般是习惯用法,记住打包时需要指定打包之后的文件名,而且要用 ".tar" 作为扩展名。

    我们再来看看tar命令的解打包使用规范,tar命令的解打包格式为:[root@localhost ~]#tar [选项] 压缩包 详解如下:

    选项

    含义

    -x

    对 tar 包做解打包操作。

    -f

    指定要解压的 tar 包的包名。

    -t

    只查看 tar 包中有哪些文件或目录,不对 tar 包做解打包操作。

    -C 目录

    指定解打包位置。

    -v

    显示解打包的具体过程。

    当我们看完打包和解打包明令详解后,我们可以清楚地看出解打包和打包相比较,只是把把打包选项“-cvf”改成“-xvf”如下所示:

    [root@localhost ~]# tar -xvf anaconda-ks.cfg. tar

    #解打包到当前目录下

    [root@localhost ~]# tar -xvf test.tar -C /tmp

    #把文件包test.tar解打包到/tmp/目录下

    需要说明的是,如果使用“-xvf”选项,将会把包中的文件解压到当前的目录下,如果想要指定解压位置,则需要使用“-C”选项,此处的“C”必须是大写。如果只想查看文件包中有哪些文件,则可以把解打包选项 "-x" 更换为测试选项 "-t"。

    [root@localhost ~]# tar -tvf ceshi.tar

    tar命令做打包压缩(解压缩解打包)操作

    当 tar 命令同时做打包压缩的操作时,其基本格式如下:

    [root@localhost ~]#tar [选项] 压缩包 源文件或目录

    此处常用的选项有以下 2 个,分别是:

    -z:压缩和解压缩 ".tar.gz" 格式;

    -j:压缩和解压缩 ".tar.bz2"格式。

    如:压缩与解压缩 ".tar.gz"格式。

    [root@localhost ~]# tar -zcvf tmp.tar.gz /tmp/

    #把/temp/目录直接打包压缩为".tar.gz"格式,通过"-z"来识别格式,"-cvf"和打包选项一致。

    压缩与解压缩 ".tar.bz2" 格式。和".tar.gz"格式唯一的不同就是"-zcvf"选项换成了 "-jcvf",如下所示:

    [root@localhost ~]# tar -jcvf tmp.tar.bz2 /tmp/

    #打包压缩为".tar.bz2"格式,注意压缩包文件名

    [root@localhost ~]# tar -jxvf tmp.tar.bz2

    #解压缩与解打包".tar.bz2"格式

    以上所说的两种方式,把文件直接压缩成".tar.gz"和".tar.bz2"格式,才是 Linux 中最常用的压缩方式。也是需要我们必须要掌握的。

    官网:http://www.lenbor.com
  • 相关阅读:
    __weak
    c++界面设计皮肤工具
    执行游戏时出现0xc000007b错误的解决方法
    2.4.1-Java语言基础(常量)
    句法模式识别(一)-串文法
    一步一步写算法(之hash表)
    LaTeX新人教程,30分钟从全然陌生到基本入门
    初次当面试官的经历和感触
    Android入门第八篇之GridView(九宫图)
    Android-Cannot merge new index 66195 into a non-jumbo instruction的解决的方法
  • 原文地址:https://www.cnblogs.com/lenbor/p/12924185.html
Copyright © 2011-2022 走看看