Linux备份与压缩命令使用说明

时间:2022-04-08 12:51:50

tar命令
tar 命令用来创建存档和提取归档文件。
语法:
语法是
tar [命令开关] [压缩包] [将要打包压缩的文件或目录]

命令开关:

-c

创建存档,创建备份

-x

提取存档,恢复备份。

-f

创建给出文件名的存档。

-t

显示或列出存档中的文件。

-u

存档并存入到现有的存档文件。

-v

显示存档过的详细信息。

-A

连接归档文件。

示例:
对文件或目录存档 :
tar -cvf backup.tar /etc
这个命令创建了名字为backup.tar的存档文件,这个存档是对/etc目录的存档。

在这里,

backup.tar

- 是被创建的tar文件。

/etc

- 是被存档的目录。

 

  • 对目录或文件存档并且在存储设备中存储它:

    tar -cvf /dev/fd0 /home/user1/HGB

    这个命令将存档/etc这个目录并且把它存储在软盘中。

     

    在这里,

    /dev/fd0

    - 是存储存档文件的软盘的名称。

    /home/user1/HGB

    - 是被存档的目录。

     

  • 提取存档文件:

    tar -xvf backup.tar

    这个命令将提取backup.tar 文件。

  • 列出存档中的文件:

    tar -tvf backup.tar

    上述命令将显示被存档在backup.tar 文件中的文件和目录。

     

    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

    unzip命令

     

    linux下解压zip文件

     

    linux自带的unzip命令可以解压windows下的zip格式的压缩文件。

     

    unzip命令

     

      语法: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