zoukankan      html  css  js  c++  java
  • 🍖文件管理之打包压缩

    引入

    1.什么是打包压缩

    • 打包 : 指的是将多个文件和目录合并为一个特殊文件
    • 压缩 : 将该特殊文件进行压缩, 得到一个压缩包

    2.为什么使用打包压缩

    • 减少占用的空间
    • 加快网络的传输

    3.Windows 与 Linux 压缩包的不同

    • Windows : zip, rar(Linux不支持rar)
    • Linux : zip, tar.gz, tar.bz2.gz

    ps:如果想要两个系统都可以解压, 那就选择 zip 的压缩包

    ps2: 压缩包后缀不重要, 但带上更便于识别

    4.Linux 下常见的压缩包类型

    格式 压缩工具
    .zip zip压缩工具
    .gz gzip压缩工具
    .bz2 bzip2压缩工具
    .tar.gz 先使用 tar 命令归档打包, 然后使用 gzip 压缩
    .tar.bz2 先使用 tar 命令归档打包, 然后使用 bzip 压缩

    一.打包压缩

    1.打包

    • 选项

      "c"		#创建
      "v"		#详细信息
      "f"		#打包后放置的路径
      
    • 命令

      [root@shawn ~]# tar cvf ./a_bak.tar a.txt 
      a.txt
      [root@shawn ~]# ls
      a_bak.tar  a.txt
      

    2.压缩

    • 命令

      [root@shawn ~]# gzip a_bak.tar  
      [root@shawn ~]# ls
      a_bak.tar.gz  a.txt  //会自动加上 ".gz" 后缀
      

    3.上面压缩打包合二为一

    • z 代表 gzip 压缩算法

      [root@shawn ~]# tar cvfz a1_bak.tar.gz ./a.txt 
      ./a.txt
      [root@shawn ~]# ls
      a1_bak.tar.gz  a_bak.tar.gz  a.txt
      
    • j 代表 bzip2 压缩算法

      [root@shawn ~]# tar cvfj a2_bak.tar.bz2 ./a.txt 
      ./a.txt
      [root@shawn ~]# ls
      a1_bak.tar.gz  a2_bak.tar.bz2  a_bak.tar.gz  a.txt
      

    4."zip" 打包压缩

    • 命令

      //第一个参数是压缩包存放的位置, 后面的都是要打包压缩的文件
      [root@shawn ~]# zip /root/ab.zip a.txt b.txt 
        adding: a.txt (deflated 98%)
        adding: b.txt (stored 0%)
      [root@shawn ~]# ls
      ab.zip  a.txt  b.txt
      

    二.解压缩

    1.针对 xx.tar.gzxx.tar.bz2 压缩算法

    //无需指定算法, "tar" 会自动判断
    语法: tar xvf [压缩包] -C [解压到的目录]
    
    示例
    [root@shawn ~]# ls
    a_bak.tar.gz  ab.zip  a.txt  b.txt  song
    [root@shawn ~]# tar xvf a_bak.tar.gz -C ./song
    a.txt
    [root@shawn ~]# ls song
    a.txt
    

    2.针对 xx.zip

    语法: unzip [xxx.zip]
    
    示例
    [root@shawn ~]# ls
    a_bak.tar.gz  ab.zip  song
    [root@shawn ~]# unzip ab.zip 
    Archive:  ab.zip
      inflating: a.txt                   
     extracting: b.txt                   
    [root@shawn ~]# ls
    a_bak.tar.gz  ab.zip  a.txt  b.txt  song
    

    三.拓展知识

    1.打包压缩应用

    • 打包压缩一般用于备份文件
    • 文件的名字必须见名知意
    • 可以带上事件, 主机名之类的

    2.时间命令date

    • 常用选项


    3.使用反引号``加入时间

    [root@shawn ~]# ls
    a.txt  b.txt
    [root@shawn ~]# tar cvfz `date +%F`_bak.tar.gz /root
    [root@shawn ~]# ls
    2020-10-27_bak.tar.gz  a.txt  b.txt
    

    4.或者使用 NTP 网络同步时间

  • 相关阅读:
    关于带权并查集
    Connections in Galaxy War ZOJ
    Supermarket POJ
    并查集判树 poj 1308
    最长异或值路径【字典树应用】
    最大异或对
    trie字典树【模板题】
    UVA536 二叉树重建 Tree Recovery
    UVA1584环状序列 Circular Sequence
    【CodeForces 622F】The Sum of the k-th Powers
  • 原文地址:https://www.cnblogs.com/songhaixing/p/13888457.html
Copyright © 2011-2022 走看看