1. 程式人生 > >linux下資料壓縮的幾種方法與檢視方式

linux下資料壓縮的幾種方法與檢視方式

1,tar命令

使用tar程式打出來的包我們常稱為tar包,tar包檔案的命令通常都是以.tar結尾的。生成tar包後,就可以用其它的程式來進行壓縮了,tar命令本身不進行資料壓縮,但可以在打包或解包的同時呼叫其它的壓縮程式,比如呼叫gzip、bzip2
    選項:

     -c 建立.tar格式包檔案
     -x 解開.tar格式包檔案
     -v顯示詳細資訊
     -f 使用歸檔檔案
     -p 保留原始檔案許可權
     -C 解壓到目標資料夾
     -z 呼叫gzip進行壓縮或解壓
     -j 呼叫bzip2進行壓縮或解壓

    打包示例: 

  tar -cvf /root/Desktop/aa.tar bb.txt 打包檔案

    打包並壓縮示例:

  tar -zcvf /root/Desktop/aa.tar.gz bb.txt  壓縮檔案

    解壓縮示例:

  tar -zxvf /root/Desktop/aa.tar.gz -C /aa/bb 解壓檔案

2,gzip壓縮

    常用資料壓縮命令,壓縮比例可手工調整,  壓縮後文件名 filename.gz:

        注:壓縮後文件可直接load至hive資料庫,但每個檔案只會產生一個map,查詢效率極低

選項:

-c 將輸出寫到標準輸出上,並保留原有檔案。
-d 將壓縮檔案解壓。
-l 對每個壓縮檔案,顯示下列欄位:
壓縮檔案的大小;未壓縮檔案的大小;壓縮比;未壓縮檔案的名字
-r 遞迴式地查詢指定目錄並壓縮其中的所有檔案或者是解壓縮。
-t 測試,檢查壓縮檔案是否完整。
-v 對每一個壓縮和解壓的檔案,顯示檔名和壓縮比。
-num 用指定的數字 num 調整壓縮的速度,-1 或 --fast 表示最快壓縮方法(低壓縮比),
-9 或--best表示最慢壓縮方法(高壓縮比)。系統預設值為 6。

壓縮示例:

    gzip filename

    檢視gzip壓縮檔案內容命令:     

    zcat filename.gz

     解壓縮命令:

    gzip -d filename.gz

    壓縮過程中可控制壓縮率(1-9),1壓縮最快,壓縮率不高,9壓縮最慢,壓縮比例最高,預設為6,例如:

    gzip -9 filename
3,bzip2壓縮

    常用資料壓縮命令,壓縮比例比gzip高,壓縮後文件名為filename.bz2

        注:壓縮後文件可直接load至hive資料庫

    選項

-c或——stdout:將壓縮與解壓縮的結果送到標準輸出;
-d或——decompress:執行解壓縮;
-f或-force:bzip2在壓縮或解壓縮時,若輸出檔案與現有檔案同名,預設不會覆蓋現有檔案。若要覆蓋。請使用此引數;
-h或——
help
:線上幫助; -k或——keep:bzip2在壓縮或解壓縮後,會刪除原始檔案。若要保留原始檔案,請使用此引數; -s或——small:降低程式執行時記憶體的使用量; -t或——test:測試.bz2壓縮檔案的完整性; -v或——verbose:壓縮或解壓縮檔案時,顯示詳細的資訊; -z或——:強制執行壓縮; -V或——version:顯示版本資訊; --repetitive-best:若檔案中有重複出現的資料時,可利用此引數提高壓縮效果; --repetitive-fast:若檔案中有重複出現的資料時,可利用此引數加快執行效果。
    壓縮示例:
    bzip2 filename

    解壓縮示例:

    bzip2 -d filename.bz2

    直接檢視壓縮檔案示例:     

    bzcat filename.bz2

使用預設壓縮情況下壓縮效能:

    bzip2 > gzip > tar

相關推薦

linux資料壓縮方法檢視方式

1,tar命令使用tar程式打出來的包我們常稱為tar包,tar包檔案的命令通常都是以.tar結尾的。生成tar包後,就可以用其它的程式來進行壓縮了,tar命令本身不進行資料壓縮,但可以在打包或解包的同時呼叫其它的壓縮程式,比如呼叫gzip、bzip2    選項:

在Windows環境學習Linux命令列的方法

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

本地文件上傳到Linux服務器的方法

scp xftp u盤掛載 本文介紹幾種常見的方法,把文件上傳到Linux服務器中!常見有使用:scp命令、xshell軟件裏的xftp程序、U盤掛載、服務器自帶的lrzsz程序。一、scp使用說明:1、把本機的文件傳給目的服務器:scp get66.pcap [email protec

Python中遍歷pandas資料方法介紹和效率對比說明

前言 Pandas是python的一個數據分析包,提供了大量的快速便捷處理資料的函式和方法。其中Pandas定義了Series 和 DataFrame兩種資料型別,這使資料操作變得更簡單。Series 是一種一維的資料結構,類似於將列表資料值與索引值相結合。DataFrame 是一種二維

NLP之TFTS讀入資料:TF之TFTS讀入時間序列資料方法

NLP之TFTS讀入資料:TF之TFTS讀入時間序列資料的幾種方法 T1、從Numpy 陣列中讀入時間序列資料 1、設計思路 2、輸出結果 {'times': array([ 0, 1, 2, 3, 4, 5, 6, 7, 8,

Oracle刪除重複記錄只保留一條資料方法

1、查詢表中多餘的重複記錄,重複記錄是根據單個欄位(peopleId)來判斷 SELECT * FROM people WHERE peopleid IN ( SELECT peopleid FROM people GROUP BY peopleid

表中有自增長主鍵時,插入資料方法

資料庫的表中有自增長主鍵時(如圖所示),我們該怎麼插入資料呢? 方式一:     當需要插入的資料比較少時,即可以通過一條一條的插入時,我們可以指定該列(id)的值,但是新插入的值不能和已有的值重複,而且必須大於其中最大的一個值 方式二:   

【轉】linux清屏的方法

內置命令 測試 get 回車 清空 曾經 .exe 兼容 喜歡 在windows的DOS操作界面裏面,清屏的命令是cls,那麽在linux 裏面的清屏命令是什麽呢?下面筆者分享幾種在linux下用過的清屏方法。 1、clear命令、這個命令將會刷新屏幕,本質上只是讓終端顯示

插補缺失資料方法:《Statistical Analysis with Missing Data》習題4.15

一、題目 本題基於之前習題1.6產生關於 ( Y 1

iOS 去除陣列中重複資料方法

第一種:利用NSDictionary的AllKeys(AllValues)方法 程式碼: NSArray *dataArray = @[@"2014-04-01",@"2014-04-02",@"2014-04-03", @"2014-04-01",

jessite框架前臺顯示資料方法

1.自定義標籤獲取字典資料,即在js指令碼中通過jstl自定義標籤引入,並根據獲取的資料動態顯示出自己需要的資料,如下程式碼紅色部分,當前場景沒有用到,但是可以作為一種方法去了解。 gridComplete: function () var ids = jQuery("#grid-t

Linux安裝軟體的方法

一、rpm包安裝方式步驟:  1、找到相應的軟體包,比如soft.version.rpm,下載到本機某個目錄;  2、開啟一個終端,su -成root使用者;  3、cd soft.version.rpm所在的目錄;  4、輸入rpm -ivh soft.version.rp

python中,向 list 新增資料方法

//...1... def a(): list=[] for i in range(1000): list=list+[i] print(list) //...

java中把檔案拷貝到指定目錄最簡單方法

java中把檔案拷貝到指定目錄下最簡單幾種方法       String savePath =  "D:/file" ; // 檔案儲存到d盤的file目錄下 File savefile = 

HTTP傳遞資料方法

Http請求的時候,需要傳遞引數給後端,一般都是key-value的形式,傳遞的方法有很多種 例如需要傳遞的資料是 dict(key1=value1,key2=value2) 1. URL引數 把引數放在URL中,適用於所有的HTTP請求Method,例如GET,POST 例如: 對應requests模組的

C#_CombolBox新增資料方法

方法一:檢視新增 方法二:利用陣列新增 string[] comValue = new string[] {"北京","上海","天津","重慶","廣東","廣西","湖南","湖北" };

JAVA從控制檯讀資料方法

1. 使用標準輸入流:system.in (JDK 1.4 及以下版本唯一的讀取方法) System.in.read()一次只讀入一個位元組資料,返回一個整數,且必須初始化 其他型別資料需要手工轉換 讀取過程必須捕獲IOException //int read =

JDBC連線資料庫的方法簡單解析

首先要知道jdbc:使用Java程式碼傳送sql語句的技術就是jdbc技術。即jdbc是一個介面,用於不同的資料庫(oracle、mysql、sqlserver。。)的操作。使用jdbc傳送sql語句的前提: 登入資料庫伺服器(

獲取MNIST資料方法

獲取MNIST資料的幾種方法 MNIST是一個非常常見的資料集,資料量小,方便讀入記憶體,而且直觀可見,在實現各種機器學習演算法的時候,經常可以用來當小白鼠實驗。這裡介紹幾種獲取MNIST的方法,包括直接從某個連結下載資料集的方案,也有利用python庫間接下載的方案。 方法1

瀏覽器儲存資料方法

Web產品中很多時候需要在客戶端,即瀏覽器中儲存一些必要的資料。而面臨這類需求時,你應當知悉對應的解決方案不僅僅只有一種。 Cookie 這是最早被使用,且至今仍被廣泛採用的最簡單的瀏覽器中儲存資料方法。 Cookie使用鍵/值形式儲存資料,且資料型別只能為字串。 Cookie相關的CRUD操作: