52AV手機A片王|52AV.ONE
標題:
Linux 各種壓縮與解壓縮指令:tar,gz,tar.gz,bz,tar.bz,bz2,tar.bz2,xz,tar.xz,Z,tar.Z,tgz,tar.t
[打印本頁]
作者:
IT_man
時間:
2016-1-3 13:32
標題:
Linux 各種壓縮與解壓縮指令:tar,gz,tar.gz,bz,tar.bz,bz2,tar.bz2,xz,tar.xz,Z,tar.Z,tgz,tar.t
Linux 各種壓縮與解壓縮指令:
( |8 S7 q9 `- g
.tar
. i+ w2 W; r2 w/ w. z3 j$ T- ]
.gz
+ P7 A7 G3 i2 C- {! H5 Q2 V' f$ k& K
.tar.gz
' Y/ I: [$ K1 e$ O d
更新tar.gz壓縮檔內某一個檔案或某目錄內幾個檔案:
例如
6 o6 y8 A; Z* ^6 d3 G. a
參考:
https://askubuntu.com/questions/ ... pdate-a-tar-gz-file
8 A& |5 j% {0 r; U
1.)先將.tar.gz解壓為.tar
5 K# j/ I* w! V' e
gunzip filename.tar.gz
# {7 }+ n6 e1 B& m3 r
2.)更新.tar
6 T |( s2 f4 q) o( ^: {9 @
tar -uvf filename.tar new_file 或
; E3 P4 s+ T$ F1 Z& x
tar -uvf filename.tar subdir/*
1 P) ^! C/ f, r# l( _+ k g$ u) p8 {
3.)壓縮已更新檔.tar
2 u; `% A& G- E! z" u
gzip filename.tar
9 j/ w; z8 }$ I% d1 x
; S# r9 G/ N* h7 J
排除不想壓縮的目錄或檔案:
例如
1 h+ t- _ H& ~0 f" A& E4 _
要備份的目錄是 aaa
?9 G4 A. G- Q
不想要備份的是 aaa 裡面的 bbb 子目錄
4 B# r; ?+ r2 Q( C8 g% B$ b8 L
tar zpcvf aaa_backup.tar.gz --exclude=./aaa/bbb ./aaa
7 L% z/ c* c( u' Y
1 p* E9 c, g! b; e* i1 A y5 o
壓縮不包含路徑資訊(絕對路徑):
例如
( h8 n2 Z8 l; g0 X& K& n$ P- `- t
我要壓縮 /home/user1/tmp/* ,(有 a.txt ,b.txt)不管目前工作目錄在哪,都可以去掉目錄資訊,例如 目前工作目錄在 /
+ b# _2 B2 P% p4 v: o, }( Y9 O
# tar -zcvf tmp.tar.gz -C /home/user1 tmp (tmp前有一個空格)不保留" /home/user1"路徑
1 t6 L0 @0 s/ `6 P5 ]
# tar -ztvf tmp.tar.gz
! K# i) \% C# L' w7 ^( H" C8 l, m
drwxrwxr-x user1/user1 0 2018-04-07 12:10 tmp/
! ? R8 l8 `/ c
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 tmp/a.txt
e4 e4 |) m$ X# G
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 tmp/b.txt
8 U2 w2 A& |; w6 ~, v# i
# tar -zcvf tmp.tar.gz -C /home/user1/tmp . (tmp後有一個空格再一點)不保留" /home/user1/tmp"路徑
% ^9 _ H A7 F+ W; G
# tar -ztvf tmp.tar.gz
+ v: z! K8 `1 ~. b5 W4 B
drwxrwxr-x user1/user1 0 2018-04-07 12:10 ./
# J6 J" `4 r# x i
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 ./a.txt
, K/ y- R- i; k& w4 B3 a
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 ./b.txt
3 E( i% g* ]3 e
目前工作目錄在 /home/user1
- F2 M7 j# @7 h, u8 Z2 c
# tar -zcvf tmp.tar.gz tmp
( G# X7 C: e2 w: V$ l
# tar -ztvf tmp.tar.gz
! S: F$ z$ h$ c( l
drwxrwxr-x user1/user1 0 2018-04-07 12:10 tmp/
8 U* G! f$ }' ~
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 tmp/a.txt
. [! ?8 s# [, m# g
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 tmp/b.txt
! [; t* d2 }1 o, l# C r: \$ q) a3 Q
# tar -zcvf tmp.tar.gz -C tmp . (有一點喔)不保留" tmp"路徑
0 ^6 A6 X/ T( v( H
# tar -ztvf tmp.tar.gz
# e+ @% Q, T6 I# F
drwxrwxr-x user1/user1 0 2018-04-07 12:10 ./
! A% O2 j) s: G* V t
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 ./a.txt
1 ^5 [1 {, x* C; I
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 ./b.txt
* S4 f6 V3 {" e# U
2 V! W/ p: L: \3 c8 L5 R# b
解壓縮到指定的目錄
例如 解壓/home/user1/tmp.tar.gz 到 /home/user1/tmp 工作目錄在/home/user1
3 M' I- Q$ [) \" c
# tar -C tmp -zxvf tmp.tar.gz 可以使用相對路徑, -C(大寫)一定要接在tar後面,其他位置都不行
& F5 a) b2 Y3 ~0 n4 t# F
# tar -C /home/user1/tmp -zxvf tmp.tar.gz 可以使用絕對路徑
: o7 R& v" J' O! @8 f7 Y
如果工作目錄在/home 以外的位置就要使用絕對路徑
* p5 G3 u& b# F
.bz
4 t/ Y% @% f% \# M j
.tar.bz
! J4 \ v I1 n( M, L5 L: c5 u
.bz2
1 X# u% \0 m& C6 Y
.tar.bz2
5 X% W9 ]6 M1 E: e5 _, n4 N
.xz
" C* k/ X8 }6 F+ l' w
.tar.xz
/ Y! u- _( u( `8 H; @
.Z
3 }$ a$ @1 D& @5 }; w
.tar.Z
1 e8 z: U5 K, Q l
.tgz
: \- L4 ~+ T, |4 `7 B
.tar.tgz
% b5 \1 [3 k( Q/ [1 V
.7z
0 z) ^" {) e& P( d/ u& A
.zip
# J9 w1 p' ]. T4 M& [" ~
.rar
: B4 j1 b9 G- T7 ]- [
.lha
. U' J- v' _: \3 d9 ?, E6 A' {! p! Z
& n# |7 N9 Z( }/ ~6 t7 c
split : 大檔分割成小檔例如:
6 k z9 C- E" m
把一個500MB的檔案(file.tar.gz),分割成每個檔50M的小檔案可以用以下指令
! C; v! {, f% a
split -b 50m file.tar.gz (m 可以改成G(giga))
; e! Z6 w8 P5 s6 r# W
若要合併 可以用cat 指令把那些小檔案合併成一個大檔案 例如:
5 S# c( n7 @5 A6 s6 z" n4 p+ E
cat xaa xab xac xad xae xaf > file.tar.gz
0 v1 y% n; S6 z( Q# c* s
2 V S( L6 [: o& \9 ]
* j3 S3 e) N: k
參考自 :
9 ^/ p1 z- t0 H9 \- p1 d( t
http://note.drx.tw/2008/04/command.html
- W! ]- d5 y* w8 L3 e5 I$ y
3 k1 }6 M x3 R; [5 H
歡迎光臨 52AV手機A片王|52AV.ONE (https://www.52av.one/)
Powered by Discuz! X3.2