歸檔,也稱為打包,是指文件或目錄的集合,這個集合存儲在壹個文件中。歸檔文件沒有經過壓縮,因此它所占用的空間是其中所有文件和目錄的總和。
與歸檔文件類似,壓縮文件也是文件和目錄的集合,這個集合也存儲在壹個文件中,但兩者的區別在於壓縮文件采用了不同的存儲方式,使得它們所占用的磁盤空間小於集合中所有文件的總和。
壓縮是指利用算法對文件進行處理,達到了最大限度保留文件信息,減小文件大小的目的。它的基本原理是通過查找文件中重復的字節,創建壹個字節相同的字典文件,用壹個代碼表示。例如,在壹個壓縮文件中,不止出現壹次。
《C語言中文網》,那麽,在壓縮文件的時候,這個詞會用壹個代碼來表示,並寫入字典文件,這樣就可以達到減小文件大小的目的。
由於計算機處理的信息是以二進制形式表示的,壓縮軟件用特殊字符標記二進制信息中的同壹字符串。只要進行合理的數學計算,就可以大大壓縮文件的體積。用壓縮軟件壓縮壹個或多個文件,形成文件壓縮包,既能節省存儲空間,又便於在網絡上傳輸。
如果妳能理解文件壓縮的基本原理,就很容易認為壓縮壹個文件很可能會破壞文件的內容。因此,壓縮可以分為有損壓縮和無損壓縮。無損壓縮很好理解,就是壓縮後的數據必須準確;有損壓縮意味著即使個別數據丟失,也不會對文件產生太大影響。有損壓縮廣泛應用於動畫、聲音和圖像文件,典型代表是DVD文件格式。
Mpeg,音樂文件格式mp3和圖像文件格式jpg。
用壓縮工具對文件進行壓縮,生成的文件稱為壓縮包,文件的體積通常只有原文件的壹半甚至更小。需要註意的是,壓縮包中的數據不能直接使用,文件數據需要用壓縮工具還原後才能使用。這個過程也叫解壓。
在Linux下,有兩個常用的存檔命令,分別是tar和dd (tar的應用更廣泛);常用的壓縮命令有很多,比如gzip、zip、bzip2。