我喺村姑
前言
果然都是windows重度用戶,本文帶你用Linux的角度看“壓縮”!
劃重點
相對於windows下的鼠標點點拖拖,linux在終端,大概率是用不著界面操作文件和文件夾的。
Linux是開放源代碼的,由數量龐大的GNU軟件搭建而成。本文的壓縮軟件,無毒是肯定的(因為犯不著,留後門,是不想在開源界混了嗎?)。
打包
壓縮,解壓縮軟件千千萬,打包解包的指令只一個——tar。
好用指出,我想都不用多說了吧。
使用man tar查看該手冊,重點的功能描述,和示例都圈出來了。
因為一般的壓縮軟件,僅能對單個文件進行壓縮,如果對於目錄,是無法操作的。所以這時候需要“打包”,把一堆雜七雜八的文件,甭管什麼往一個包裡一裝。這就是一個整體,然後調用壓縮指令,就可以了。這也是linux系統實踐中最常用的方法。
英文的不直觀,下面是中文的參數註釋。
壓縮軟件
終於說到壓縮軟件了。Linux下還有不少選擇,常見一些壓縮文件的擴展名會有
我們知道,linux的文檔擴展名是沒有用的,這樣寫只是用於標識,該文檔是基於那個軟件產生的。
Linux下用的最多的,當屬 gzip,bzip2,和xz。由於使用習慣,我們重點介紹一下gzip這款壓縮軟件。
gzip是GNU軟件,業已取代了較為古舊的compress指令。完全支持windows下使用較高的zip文件的壓縮解壓。
後來GNU又開發出了bzip2和xz,這些壓縮效果比較好,效率比較高的軟件。但是這3款軟件,通暢僅能針對一個文件進行壓縮和解壓縮。這樣的話,如果操作為數眾多的文件,豈不崩潰!
所以,就體現出上一節所說tar打包指令的重要性。
這些工具聯合起來,威力無比!
言歸正傳。下面是gzip的常用參數和使用方式。
gzip [-cdtv#] 文件名其中,
-c 將壓縮數據輸出到終端stdout
-d 解壓縮
-t 用來減壓一個壓縮文件的一致性,檢查文件是否有誤
-v 可視化顯示原文件,壓縮文件壓縮比等信息
下面通過例子來說明其用法。我們使用圖片展示這個過程。
前提是我們創建了一個目錄
mkdir -pv /tmp/gzip_demo然後創建一個隨機文件,並填充一些內容
openssl rand -base64 1024984 > log生成的單文件log使用gzip進行壓縮
gzip -v log可以看到,壓縮比率和目標文件名。log文件被替換。這是gzip的工作原理。
在默認情況下,原本的文件會被壓縮為 gz 為後綴的文檔,源文件不復存在。這與windows下的winrar,7zip等軟件完全不同,一定要注意,注意,注意!
組裝起來,更強大!
Linux下的指令,通過管道符的助力,可以讓你的代碼隨著思緒飛舞,一行解決戰鬥,瞬間搞定!
下面結合打包指令tar,進行一些更為複雜的壓縮操作。
示例1:打包某幾個目錄,但是排除一些特定目錄
例如,打包 /etc和/root目錄,但是 /root/etc* 開頭的文件,不需要打包和壓縮。將新生成的壓縮包放置在 /root/system.tar.gz 內。
指令需要像下面這樣寫:
tar -zcv -f /root/system.tar.bz2 --exclude=/root/etc* --exclude=/root/system.tar.gz /etc /root逐一說明參數的用法:
-z 使用 gzip 壓縮
-c 創建文檔
-v 展示詳細信息
--exclude 指定不包含規則
因為目標文檔也在壓縮文檔內,所以一定要追加到 --exclude 選項內。否則死循環。
示例2:僅備份/etc目錄下修改日期在2019-10-01之後的文件
直接上指令:
tar -zcv -f /root/etc.newer.tar.gz --newer-mtime="2019/10/01" /etc/*主要使用了 --newer-mtime 選項。別的都與上一條一致。
結語
好了,簡短寫到這兒吧。Linux下工具很多,效率很高,持續多年生產環境打磨,性能穩定的一匹。你值得信賴。
windows下,動不動就要授權,動不動就要彈廣告的壓縮軟件,真的不堪回首。
也許只有Linux才能給你清潔無毒,白蓮花般的壓縮體驗!
Happy coding :-)
程序員小助手
推薦Bandizip
市面上可選的壓縮軟件很多,比如呼聲較高的winrar、7-zip、360壓縮什麼的,這些算是相對沒有廣告的;而好壓、快壓之流就屬於廣告彈窗奇多的流氓軟件了;綜合看下來,我認為Bandizip是最好的。
首先,它沒有廣告、免費使用。然後就是Windows和Mac OS都支持,並且支持的格式多,菜單自定義性強,可以根據自身使用習慣作調整。
在瀏覽器搜索即可進入官方網站下載到這款軟件。
說一下我是如何設置的
在常規設置中,我會關掉軟件自動更新
而關於上下文菜單,雙擊動作我選擇【用Bandizip打開】
選擇解壓菜單,我勾選【解壓到...】和【預覽壓縮文件】
它的意思是在你右鍵某個壓縮文件時,可以預覽壓縮文件內容,而【解壓到...】指的是解壓到當前目錄以壓縮文件名命名的一個文件夾中,而不是一大片零碎文件鋪滿當前文件夾。
壓縮菜單,我會勾選【添加到“壓縮文件名.zip”】,然後當你右鍵某個或若干個文件或文件夾時,可以方便的壓縮打包。個人一般用zip格式,你喜歡用其他的當然也行。
然後解壓設置我會取消勾選【解壓完成後不要關閉進度窗口】
壓縮設置同樣取消勾選【壓縮完成後不要關閉進度窗口】
就這樣,簡潔高效的壓縮軟件已經配置好了
愛說閒話的張雲舞
推薦使用:7-Zip
理由如下:7-Zip是一款完全免費並且開源的軟件,沒有任何廣告,相比於同類軟件,有更高的壓縮率且不會消耗大量資源。
360壓縮:不定時會彈出廣告
WinRAR:官方試用版帶有廣告,需購買,當然網上有破解版,但是最好還是支持正版!
2345好壓:帶有彈窗廣告
快壓:帶有彈窗廣告
艾奧影視
7zip,7zip,7zip重要的事說3遍
thornfield
7-zip壓縮率高
阿斯頓馬丁跑318國道
我是一直用好壓
蠿麣魕爧龗
band,沒有之一
大兵q
以前用360全家桶,換win10後就只留了壓縮軟件盒極速瀏覽器
被hare愛上的dog
一般的winrar壓縮軟件 我們一直用
華固智慧王
360