ubuntu-基本命令篇-18-压缩包管理
18.壓縮包管理
1.常用的壓縮命令
.tar??? tar c v f x z j。c=create,f=file,z=zip,v=visible.gz ??? gzip,gunzip
.bz2??? bzip2,bunzip2
.gz和.bz2類是,就是壓縮率不同,.bz2壓縮率高。
.zip??? zip,unzip
.rar??? rar a,rar x
7z??? 7z?
.Z??? compress,uncompress
現在.gz和.Z等價。.tar能將多個文件生成一個文件,文件的尺寸不會有太大變化。這時候再用gzip再對大文件的.tar進行壓縮,最后生成的文件名一般為.tar.gz,比如eclipse-SDK-3.5.2-linux-gtk.tar.gz。.tar.gz文件比.gz文件要小很多。
2.壓縮包的概念
1.打包,將多個文件打包成一個文件,比如tar2.壓縮,將大尺寸的數據壓縮成小尺寸的數據。比如gz
有損壓縮:壓縮完后解壓的文件與壓縮之前的文件不一樣,壓縮率比較高,音頻和視頻到壓縮一般都是使用有損壓縮,比如mp3,jpeg也是有損壓縮。
無損壓縮:壓縮完后解壓縮的文件與壓縮前的一樣。一般重要的文檔都是使用無損壓縮。保證數據的一致性。壓縮率比較低,
注意:linux中沒有文件后綴到說法。但是.tar,.gz 是約定成俗到
創建目錄test
[cpp]?view plaincopyprint?進入到test目錄
拷貝/var/log/中到所有文件和文件夾到當前test目錄:
其中 “.“就表示當前目錄,“*”就表示目錄下到所有文件。
查看當前目錄大小
[cpp]?view plaincopyprint?
然后 壓縮文件夾 logbackup.tar ,這時候會生成logbackup.tar.gz,而原來到logbackup.tar就被替代了。
[cpp]?view plaincopyprint?
logbackup.tar 的大小是9932800,而經過gzip壓縮后的logbackup.tar.gz大小是2130506,大小有明顯減小。
[cpp]?view plaincopyprint?
解壓縮logbackup.tar.gz文件,這時候我們發現logbackup.tar.gz文件已經不再,而logbackup.tar文件有重新生成,他的大小是9932800,壓縮后再解壓縮得到的文件和壓縮前一樣大小,這是無損壓縮。
ls -lh logbackup.tar?和ls -l logbackup.tar的不同之處在于使用
ls -lh?得到的文件信息大小是以MB為單位到,而ls -l?得到的文件信息是以字節為單位。
使用 bzip2方式壓縮文件logbackup.tar,得到logbackup.tar.bz2,它的大小是1480419,比logbackup.tar.gz文件的2130506要小,這表明bzip2的壓縮率比gzip的壓縮率要大。
tar xvf logbackup.tar?? ??? 解壓縮.tar包。
tar xvfj logbackup.tar.bz2??? ? 命令會先用命令?bunzip2 logbackup.tar.bz2?加壓所.gz文件到logbackup.tar,然后再使用tar xvf logbackup.tar?解包,這時候解包出來到文件會覆蓋原來到文件。logbackup.tar.bz2 依然存在,但是不產生logbackup.tar。
mkdir test2 在當前目錄下創建目錄test2
1.將當前目錄下到logbackup.tar.bz2移動到剛創建到目錄test2下。[cpp]?view plaincopyprint?
[cpp]?view plaincopyprint?
[cpp]?view plaincopyprint?
[cpp]?view plaincopyprint?
[cpp]?view plaincopyprint?
[cpp]?view plaincopyprint?
[cpp]?view plaincopyprint?
注意:
如果要壓縮一個目錄,那么可以使用如下命令:
[cpp]?view plaincopyprint?如果使用命令
[cpp]?view plaincopyprint?rar a 打包?
rar x 解包
rar a logbak.rar * 打包并壓縮當前目錄下到所有文件并生成壓縮包logbak.rar。
生成到logbak.rar的大小是1426409。
rar x logbak.rar 解壓縮logbak.rar。無損壓縮。
tar cvf package.tar firelist folderlist/*,*表示全部。
相關轉載:http://remindme.blogbus.com/logs/25006959.html
ubuntu 解壓 打包 命令全集
.tar
解包:tar xvf FileName.tar
打包:tar cvf FileName.tar DirName
(注:tar是打包,不是壓縮!)
---------------------------------------------
.gz
解壓1:gunzip FileName.gz
解壓2:gzip -d FileName.gz
壓縮:gzip FileName
.tar.gz 和 .tgz
解壓:tar zxvf FileName.tar.gz
壓縮:tar zcvf FileName.tar.gz DirName
---------------------------------------------
.bz2
解壓1:bzip2 -d FileName.bz2
解壓2:bunzip2 FileName.bz2
壓縮: bzip2 -z FileName
.tar.bz2
解壓:tar jxvf FileName.tar.bz2
壓縮:tar jcvf FileName.tar.bz2 DirName
---------------------------------------------
.bz
解壓1:bzip2 -d FileName.bz
解壓2:bunzip2 FileName.bz
壓縮:未知
.tar.bz
解壓:tar jxvf FileName.tar.bz
壓縮:未知
---------------------------------------------
.Z
解壓:uncompress FileName.Z
壓縮:compress FileName
.tar.Z
解壓:tar Zxvf FileName.tar.Z
壓縮:tar Zcvf FileName.tar.Z DirName
---------------------------------------------
.zip
解壓:unzip FileName.zip
壓縮:zip FileName.zip DirName
---------------------------------------------
.rar
解壓:rar x FileName.rar
壓縮:rar a FileName.rar DirName
rar請到:http://www.rarsoft.com/download.htm?下載!
解壓后請將rar_static拷貝到/usr/bin目錄(其他由$PATH環境變量指定的目錄也可以):
[root@www2 tmp]# cp rar_static /usr/bin/rar
---------------------------------------------
.lha
解壓:lha -e FileName.lha
壓縮:lha -a FileName.lha FileName
lha請到:http://www.infor.kanazawa-it.ac.jp/~ishii/lhaunix/下載!
>解壓后請將lha拷貝到/usr/bin目錄(其他由$PATH環境變量指定的目錄也可以):
[root@www2 tmp]# cp lha /usr/bin/
---------------------------------------------
.rpm
解包:rpm2cpio FileName.rpm | cpio -div
---------------------------------------------
.deb
解包:ar p FileName.deb data.tar.gz | tar zxf -
---------------------------------------------
.tar .tgz .tar.gz .tar.Z .tar.bz .tar.bz2 .zip .cpio .rpm .deb .slp .arj .rar .ace .lha .lzh .lzx .lzs .arc .sda .sfx .lnx .zoo .cab .kar .cpt .pit .sit .sea
解壓:sEx x FileName.*
壓縮:sEx a FileName.* FileName
sEx只是調用相關程序,本身并無壓縮、解壓功能,請注意!
sEx請到:?http://sourceforge.net/projects/sex下載!
解壓后請將sEx拷貝到/usr/bin目錄(其他由$PATH環境變量指定的目錄也可以):
[root@www2 tmp]# cp sEx /usr/bin/ 解壓后編譯:
sudo ./configure
make
make install 當然,編譯的時候必須要以root 用戶,而解壓的時候不一定,普通用戶就何以。以上是常用的命令,一下是不常用的命令,在這里提下,給兄弟們一個映象,到時候能看懂就可以了。 方法二:
sudo ./configure --prefix=/路徑
make ; make install
方法三:
sudo ./configure --enable-static-link \
--prefix=$XXX/static --with-curses &&
make &&
make install
命令解釋
--enable-static-link: 這個配置命令使bash被靜態鏈接。
--prefix=$XXX/static:這個配置命令把Bash的所有文件安裝到$XXX/static目錄下,這個目錄在chroot環境下或在最終的XXX系統中將成為 /static 目錄。(XXX為用戶)
--with-curses: 將bash鏈接到某一個庫,正如LFS系統將它指向static這一個庫。
其實靜態鏈接的bash并不一定要鏈接到libncurses (也可以暫時鏈接到靜態的termcap )但在LFS中不能這樣做(關于LFS的方法可訪問相關網站,此問題不在這一范圍內)。
每行最后的&&用處很大,它使后一個命令僅在前一個命令返回值為0(表示正確執行)的情況下才執行。在所有的命令都是拷貝 &粘貼的情況下,我們必須保證如果./configure出錯,make就不執行,同樣地,如果 make 出錯,make install就不執行,諸如此類。
以上方法三是構建LFS(linux from scratch 從網上直接下載源代碼,從頭編寫程序的方式)系統并編譯軟件的重要方法之一,事實上Linux系統包括在Unix系統中在cmd的上是共通的。
本文轉自xwdreamer博客園博客,原文鏈接:http://www.cnblogs.com/xwdreamer/archive/2010/08/13/2297105.html,如需轉載請自行聯系原作者
總結
以上是生活随笔為你收集整理的ubuntu-基本命令篇-18-压缩包管理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: markDown 语法(个人练习篇)
- 下一篇: 谈及未来的 AI, 也许你已身处其中 —