<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Linux 壓縮、解壓、打包詳解

          共 1476字,需瀏覽 3分鐘

           ·

          2020-09-20 23:32

          作者:OxBoo
          來(lái)源:SegmentFault 思否社區(qū)



          在Linux 中,解壓、壓縮、打包是日常會(huì)很頻繁用到的幾個(gè)操作,但因?yàn)閰?shù)很多,沒(méi)有記憶點(diǎn),加上壓縮文件的類型很多,如果不經(jīng)常使用,會(huì)容易忘記。


          所以這篇筆記就是整理常見(jiàn)的那些解壓、壓縮、打包的命令。
          在正式學(xué)習(xí)之前,需要明確的兩個(gè)概念,打包和壓縮不是一回事:

          • 打包:是指將一大堆文件或目錄變成一個(gè)總的文件。
          • 壓縮:則是將一個(gè)大文件通過(guò)壓縮算法變成一個(gè)小文件。

          為什么要區(qū)分這兩個(gè)概念呢?這源于Linux 中很多壓縮程序只能針對(duì)一個(gè)文件進(jìn)行壓縮,這樣當(dāng)你想要壓縮一大堆文件時(shí),你得先將這一大堆文件先打成一個(gè)包(tar命令),然后再用壓縮程序進(jìn)行壓縮(gzip bzip2命令)。



          tar


          壓縮/打包


          僅打包,不壓縮。

          tar?-cvf?foo.tar?foo

          foo.tar這個(gè)文件名是自定義的,只是習(xí)慣上我們使用 .tar 作為包文件。
          打包,且壓縮。-z 參數(shù)表示以 .tar.gz 或者 .tgz 后綴名代表 gzip 壓縮過(guò)的 tar 包。

          tar?-zcvf?foo.tar.gz?foo

          打包,且壓縮。-j 參數(shù)表示以 .tar.bz2 后綴名作為tar包名。

          tar?-jcvf?foo.tar.gz?foo

          解壓


          在當(dāng)前目錄下直接解壓:

          tar?-zxvf?foo.tar.gz

          注意,如果這個(gè)目錄下有同名的文件,不會(huì)詢問(wèn),直接覆蓋。
          解壓至指定文件夾:

          tar?-zxvf?foo.tar.gz?-C?





          gzip


          gzip 命令用來(lái)壓縮文件。文件經(jīng)它壓縮過(guò)后,其名稱后面會(huì)多處 .gz 擴(kuò)展名(不帶 .tar)。

          壓縮


          將當(dāng)前目錄的每個(gè)文件壓縮成.gz文件:

          gzip?*

          遞歸壓縮指定目錄的所有文件及子目錄:

          gzip?-r?

          解壓


          解壓當(dāng)前目錄下的foo.gz 文件:


          gzip?-d?foo.gz

          解壓完成之后,foo.gz 就變成了 foo 文件。

          遞歸解壓目錄:

          gzip?-dr?

          解壓完成之后,?目錄下的所有 .gz 文件都會(huì)變成正常文件。



          zip


          zip 可以用來(lái)解壓縮文件,或者對(duì)文件進(jìn)行打包操作。文件經(jīng)它壓縮后會(huì)另外產(chǎn)生具有 .zip 擴(kuò)展名的壓縮文件。

          壓縮


          將當(dāng)前目錄下的指定目錄,壓縮為 .zip文件:

          zip?-q?-r?foo.zip?

          將指定目錄下的所有文件及其文件夾,壓縮為.zip 文件:


          zip?-q?-r?foo.zip?/

          注意,產(chǎn)生的壓縮文件在執(zhí)行命令的那個(gè)目錄下。

          解壓


          unzip 命令用于解壓縮由 zip 命令壓縮的 .zip壓縮包。

          查看壓縮包內(nèi)容:


          unzip?-v?foo.zip

          將壓縮文件在指定目錄下解壓縮,如果已有相同的文件存在,要求 unzip命令不覆蓋原先的文件。


          unzip?-n?foo.zip?-d?/

          將壓縮文件在當(dāng)前目下解壓,如果已有相同的文件,不詢問(wèn),直接覆蓋。

          unzip?-o?foo.zip

          總結(jié)

          Linux 下的壓縮解壓其實(shí)并不復(fù)雜,只是不常用的情況下,很容器忘記。

          如果你不知道在什么場(chǎng)景下,該使用什么命令,可以參照:

          • 如果只有一個(gè)大文件,可以使用 gzip 或者 zip命令。
          • 如果是一個(gè)完整的目錄,里面有很多子目錄以及文件,可以使用tar命令。



          點(diǎn)擊左下角閱讀原文,到?SegmentFault 思否社區(qū)?和文章作者展開(kāi)更多互動(dòng)和交流。


          -?END -


          瀏覽 64
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  无码内射在线播放 | 国产在线免费视频 | 久久人人爽人人爽人人片aV东京热 | 成人视频久久 | 日韩一区二区黄片视频在线看 |