日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

【linux | 打包压缩命令】

發(fā)布時間:2024/1/1 linux 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【linux | 打包压缩命令】 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

文章目錄

  • 前言
  • 打包壓縮
    • 1. zip/unzip
    • 2. gzip/gunzip
    • 3. xz
      • xz與gzip的區(qū)別
        • 空間占用
        • 時間對比
    • 4. bzip2
    • 前四個壓縮工具總結
    • 5. 打包命令——tar
      • 常用命令選項
      • 打壓縮包
      • 查看壓縮包
      • 解壓
  • 總結


前言

環(huán)境準備:
linux操作系統(tǒng)
VMware Workstation16.x
Centos7


打包壓縮

  • 壓縮
    • 為什么要打壓縮包?
      • 備份的時候,能節(jié)約空間
      • 網(wǎng)絡傳送的時候,能節(jié)約時間
  • 打包壓縮:
    • 目的:備份,還原

    打包壓縮:

    • 打包:很多文件放到一起成一個文件
    • 壓縮:減少占用磁盤空間的操作

    大文件超過4G的,無法傳輸 => 大文件的切割工具:將大文件切割(split)成很多小文件,然后我們就可以上傳了

  • Windows里的.rar壓縮文件傳遞到linux里,是否能打開?
    • .zip : windows和linux都支持
    • .rar文件在linux里默認是不支持的
      =>
    • linux里的所有的壓縮文件,windows里的都能打開
    • windows里的壓縮文件,在linux里不一定就可以打開
  • linux和Windows之間文件上傳與下載的解決方法:
    (1). xftp => 在Windows安裝
    (2). moba => 在Windows安裝
    (3). lrzsz => 在linux里安裝,在Windows里安裝了xshell但是沒安裝xftp,在xshell中使用lrzsz工具
    • lrzsz的速度沒有xftp快
    • 下載與使用:yum install lrzsz
      rz:recieve => linux里接受從windows里上傳的文件
      sz:send => 將linux里的playbook.sh文件傳到windows里

  • curl命令在linux里的使用
    curl => 理解為linux里的字符界面的瀏覽器 下載
    curl => 是默認安裝在centos7的系統(tǒng)里,默認下載文件尋訪在當前目錄下
    -O => 下載到當前文件夾
    -o /backup/nginx.tar.gz => 指定下載到/backup目錄下叫nginx.tar.gz

    % Total % Received % Xferd Average Speed Time Time Time CurrentDload Upload Total Spent Left Speed 100 1048k 100 1048k 0 0 572k 0 0:00:01 0:00:01 --:--:-- 572k [root@master ~]# ls /backup beijing filepath.txt hubei nginx.tar.gz yunnan [root@master ~]# [root@master ~]# curl -o /backup/nginx-1.21.6.tar.gz http://nginx.org/download/nginx-1.21.6.tar.gz 將http://nginx.org/download/nginx-1.21.6.tar.gz # 文件下載到本地的/backup目錄下叫nginx-1.21.6.tar.gz

    1. zip/unzip

    zip只能對文件進行壓縮,不能對文件夾進行壓縮

    • zip的使用
      • 如:zip passewd.zip passwd
        • passwd.zip => 打包壓縮文件名
        • passwd => 源文件名
    • unzip的使用
      unzip => 是解壓的命令
    [root@localhost backup]# unzip passwd.zip Archive: passwd.zipinflating: passwd

    Archive 附件: 一個壓縮包或者壓縮文件就稱為一個附件
    存檔文件,歸檔文件
    其實就是將一個文件壓縮或者很多文件放到一個文件里,把很多東西放到一起 => 這個過程就稱呼歸檔,存檔
    deflated 泄氣(壓縮)
    inflate: 解壓

    2. gzip/gunzip

    .gz壓縮文件

    直接在原文件上進行壓縮,添加后綴名.gz
    [root@localhost backup]# gzip passwd

    查看壓縮文件里的內容
    [root@localhost backup]# zcat passwd.gz

    解壓文件
    [root@localhost backup]# gunzip passwd.gz

    3. xz

    • xz 也是linux系統(tǒng)默認安裝的壓縮工具
      .xz壓縮文件

    壓縮

    [root@localhost backup]# xz passwd [root@localhost backup]# ls beijing filepath.txt guangdong hunan passwd.xz passwd.zip shenzhen

    查看壓縮文件里的內容
    [root@localhost backup]# xzcat passwd.xz

    解壓文件并查看

    [root@localhost backup]# unxz passwd.xz [root@localhost backup]# ls beijing filepath.txt guangdong hunan passwd passwd.zip shenzhen [root@localhost backup]#

    xz與gzip的區(qū)別

    空間占用

    xz的壓縮效果比gzip好,壓縮后占用的空間比較少,壓縮需要的時間長
    gzip壓縮速度快,但是效果一般

    文件比較小,使用xz或者gzip都可以
    如果文件比較大,建議使用xz壓縮,可以節(jié)約更多磁盤空間

    時間對比

    4. bzip2

    bzip2 也是linux里的壓縮工具
    .bz2壓縮文件

    解壓:bunzip2

    查看壓縮文件的內容bzcat

    前四個壓縮工具總結

    zip、gzip、xz、bzip2

    • 都是只能給一個文件打壓縮包,不推薦給文件或者多個文件夾打壓縮包

    5. 打包命令——tar

    用途:制作歸檔文件、釋放歸檔文件
    格式:tar [選項]… 歸檔文件名 源文件或目錄
    解壓:tar [選項]… 歸檔文件名 [-C 目標目錄]
    使用tar命令打的壓縮包叫tarball => 即tar包
    => 歸檔文件:將很多個文件或者文件夾打包到一個文件里,然后可以對歸檔文件進行壓縮
    .tar => 其實是歸檔,不進行壓縮
    .tar.gz => 先歸檔,然后調用gzip進行壓縮 =>速度快
    .tar.xz => 先歸檔,然后調用xz進行壓縮 =>壓縮效果好
    .tar.bz2=> 先歸檔,然后調用bzip2進行壓縮

    常用命令選項

    -c:創(chuàng)建 .tar 格式的包文件 create -x:解開.tar格式的包文件 -v:輸出詳細信息 -f:表示使用歸檔文件 file -t:列表查看包內的文件 list -p:保持原文件的原來屬性 -P:保持原文件的絕對路徑 -z 調用gzip去壓縮 -J 調用xz去壓縮 -j 調用bzip2去壓縮

    打壓縮包

    tar -czf => .tar.gz
    tar czf => .tar.gz
    tar cJf => .tar.xz
    tar cjf => .tar.bz2

  • 打包壓縮一個文件或者文件夾
  • [root@master luoyawei]# cp /boot . -r [root@master luoyawei]# ls boot passwd # 將當前目錄下的passwd文件打包成passwd.tar.gz壓縮包 [root@master luoyawei]# tar czf passwd.tar.gz passwd 壓縮文件 源文件 [root@master luoyawei]# ls boot passwd passwd.tar.gz
  • 文件和文件夾可以一起打包到一個壓縮文件里
  • [root@master luoyawei]# tar czf /lianxi/luoyawei/boot_passwd.tar.gz /boot /etc/passwd tar: 從成員名中刪除開頭的“/” [root@master luoyawei]# tar czf /lianxi/luoyawei/boot_passwd_log.tar.gz /boot /etc/passwd /var/log tar: 從成員名中刪除開頭的“/” [root@master luoyawei]#
  • 排除多個文件或者文件夾
    include 包含
    exclude 排除
  • [root@master luoyawei]# tar --exclude=/boot/{grub2,grub,efi} -czf /lianxi/luoyawei/no_grub2_boot.tar.gz /boot
  • linux 不看重后綴名,命名不小心錯誤,可以file一下可以看出是什么壓縮包
  • [root@master luoyawei]# tar czf passwd.tar.xz passwd [root@master luoyawei]# ls boot passwd passwd.tar.gz passwd.tar.xz [root@master luoyawei]# file passwd.tar.gz passwd.tar.gz: gzip compressed data, from Unix, last modified: Tue Apr 12 19:55:59 2022 [root@master luoyawei]# file passwd.tar.xz passwd.tar.xz: gzip compressed data, from Unix, last modified: Tue Apr 12 19:57:08 2022
  • 打包文件,里面嵌入當前的日期
    date 是linux里查看時間的命令
    格式化輸出日期:
  • +%Y year 年
    %m month 月
    %d day 日
    %H hour 小時
    %M minute 分鐘
    %S seconde 秒
    %F 效果跟%Y-%m-%d類似

    [root@hunan-wangzhe-5 lianxi]# date +%Y%m%d 20211027 [root@hunan-wangzhe-5 lianxi]# date +%Y-%m-%d 2021-10-27 [root@localhost lianxi]# echo $(date +'%F %H:%M:%S') 2022-05-07 19:18:47

    獲得日期給變量,然后調用變量

    [root@master luoyawei]# ctime=$(date +%Y%m%d) [root@master luoyawei]# echo $ctime 20220412 [root@master luoyawei]# [root@master luoyawei]# tar czf boot-$ctime.tar.gz /boot

    小結:

  • 如果文件名一樣,后面打包的文件會覆蓋原來的文件
  • 可以指定壓縮包存放路徑(絕對路徑)
  • 使用絕對路徑打壓縮包
  • [root@localhost luoyawei]# mkdir /weihong [root@localhost luoyawei]# pwd /lianxi/luoyawei [root@localhost luoyawei]# tar czf /weihong/passwd.tar.gz /etc/passwd tar: 從成員名中刪除開頭的“/” [root@localhost luoyawei]# ls /weihong passwd.tar.gz

    查看壓縮包

    tar tf

    解壓

    tar xf

    • xf
      # Extract all files from archive.tar.
      Extract 提取,解壓

    可以指定壓縮包解壓路徑,默認解壓在當前文件夾

    [root@master luoyawei]# tar xf /weihong/passwd.tar.gz [root@master luoyawei]# ls boot etc hosts.tar.gz [root@master luoyawei]# ls etc/ passwd [root@master luoyawei]# tar tf /weihong/passwd.tar.gz etc/passwd

    tar xf <壓縮包名> -C <解壓到的路徑>

    [root@master luoyawei]# ls /nongda_weihong/ [root@master luoyawei]# tar xf /weihong/passwd.tar.gz -C /nongda_weihong/ [root@master luoyawei]# ls /nongda_weihong/ etc

    總結

    本文章主要介紹了linux里的打包壓縮相關命令,前半部分介紹了四種主要的壓縮工具zip,gzip,xzip,bzip2,后面部分介紹了tar命令的打包與解包使用。

    總結

    以上是生活随笔為你收集整理的【linux | 打包压缩命令】的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。