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 各種壓縮與解壓縮指令:
% h) [9 y: w1 o; K; D
.tar
1 j/ g) { t) r- x
.gz
+ q8 I+ n! i8 b: a- O1 _/ U9 c
.tar.gz
+ g( \5 q* `, p. `
更新tar.gz壓縮檔內某一個檔案或某目錄內幾個檔案:
例如
. K6 \- V; o* u6 A1 B" f
參考:
https://askubuntu.com/questions/ ... pdate-a-tar-gz-file
* H( L: m# v ~, ] N; L
1.)先將.tar.gz解壓為.tar
$ ~+ e; f3 t( y6 x
gunzip filename.tar.gz
- }0 R6 z) ?; S0 W X s: L% r, f" C
2.)更新.tar
; O9 _$ y! l$ \* l, T; I, v
tar -uvf filename.tar new_file 或
* F% f+ p. N# v: w- ~% j: S
tar -uvf filename.tar subdir/*
4 f# [8 {) V, |8 J5 e6 u& t
3.)壓縮已更新檔.tar
1 g( q, H. m. C6 r) M/ g' F
gzip filename.tar
5 I5 }. l" v0 m' [$ x' w# M* p
: ?/ d" E* s3 g) u) J% W
排除不想壓縮的目錄或檔案:
例如
0 r4 V" a4 m' P8 o4 ~: }: U
要備份的目錄是 aaa
: }# g9 e3 Q. K1 T* @6 b9 L6 ~
不想要備份的是 aaa 裡面的 bbb 子目錄
7 A* k: E1 ~3 P( k2 f) F- X: v# L
tar zpcvf aaa_backup.tar.gz --exclude=./aaa/bbb ./aaa
! |! f1 P- R4 q! b& A
8 h" n k0 j( K5 n+ K1 j P
壓縮不包含路徑資訊(絕對路徑):
例如
* x3 a( v# }+ j/ K
我要壓縮 /home/user1/tmp/* ,(有 a.txt ,b.txt)不管目前工作目錄在哪,都可以去掉目錄資訊,例如 目前工作目錄在 /
4 `; P; c7 s. x8 _ i; ~; n2 @+ c
# tar -zcvf tmp.tar.gz -C /home/user1 tmp (tmp前有一個空格)不保留" /home/user1"路徑
9 d. v4 A& q# T. h$ n9 L8 {
# tar -ztvf tmp.tar.gz
# h; B4 X4 z- n: `' Q# i
drwxrwxr-x user1/user1 0 2018-04-07 12:10 tmp/
7 A% N- V5 u$ m2 P
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 tmp/a.txt
7 f/ b' D- b$ d9 H: n E0 ~) @0 c
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 tmp/b.txt
( F; R w6 P; e3 [
# tar -zcvf tmp.tar.gz -C /home/user1/tmp . (tmp後有一個空格再一點)不保留" /home/user1/tmp"路徑
/ Q8 X% Y2 t0 \, K+ [% O6 t# n
# tar -ztvf tmp.tar.gz
! N q/ D) v( C
drwxrwxr-x user1/user1 0 2018-04-07 12:10 ./
$ D/ G2 S! {4 t$ v+ y* \
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 ./a.txt
- O; L/ \+ t+ O$ }" ]
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 ./b.txt
8 P ^; w2 C% \+ p1 I* V0 B8 i2 T0 ^( O
目前工作目錄在 /home/user1
2 t' V' Q7 [+ D& t5 f" ^+ G
# tar -zcvf tmp.tar.gz tmp
_: T# ~. v0 M. M4 n. f" k
# tar -ztvf tmp.tar.gz
/ C4 r. J ~6 Y) c: c$ M! z. d% y0 o
drwxrwxr-x user1/user1 0 2018-04-07 12:10 tmp/
& ~5 N# O. f% o! [2 V
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 tmp/a.txt
! w1 D2 H: ^) B5 e) a, I4 m
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 tmp/b.txt
$ L* Z% O2 g( Z* C& R8 Y
# tar -zcvf tmp.tar.gz -C tmp . (有一點喔)不保留" tmp"路徑
, E/ `3 R; U1 c7 H) u7 }
# tar -ztvf tmp.tar.gz
I& B0 M& w9 C0 d8 }0 N
drwxrwxr-x user1/user1 0 2018-04-07 12:10 ./
( T8 ^! n6 X% j+ E0 r& {
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 ./a.txt
5 r. ^# X; S* T% F% Z) w
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 ./b.txt
: N7 s+ \$ s- i
8 M4 W9 F/ y, U) m8 S
解壓縮到指定的目錄
例如 解壓/home/user1/tmp.tar.gz 到 /home/user1/tmp 工作目錄在/home/user1
4 T1 w; \& r" E6 w7 O, R& Q1 p
# tar -C tmp -zxvf tmp.tar.gz 可以使用相對路徑, -C(大寫)一定要接在tar後面,其他位置都不行
2 t% M5 G! V8 H) }- z2 H
# tar -C /home/user1/tmp -zxvf tmp.tar.gz 可以使用絕對路徑
+ ^3 G7 e7 x3 W9 X7 ]# j* H6 J
如果工作目錄在/home 以外的位置就要使用絕對路徑
1 ^$ R' }1 S! d9 R
.bz
8 M$ g# u! e @4 w1 Y& T% R* r
.tar.bz
' O( e5 B; {4 p0 \
.bz2
' U: B/ A0 S) _/ M. B+ ~. m
.tar.bz2
- f- u$ X( ?( Q. n# y+ K0 e
.xz
l, u5 w& u% g
.tar.xz
- I& e( B# a" u4 i) W- l' D
.Z
' f, Z. V/ i0 {0 Z# W- T2 U6 R: M# q" r
.tar.Z
" M; d$ f) b! S: _; u6 i' A
.tgz
9 h2 D/ [, Z3 g6 h0 ?
.tar.tgz
& D! z* O i1 u3 {4 U0 d
.7z
6 W" N8 n! ] ]8 C' a
.zip
$ v2 W! m* u5 h% n4 J
.rar
3 M6 b! Q2 v1 U
.lha
& o3 n9 S/ L) a
, T ]; J7 v" u9 w+ O% ^
split : 大檔分割成小檔例如:
B- S3 b9 I4 m- |4 H
把一個500MB的檔案(file.tar.gz),分割成每個檔50M的小檔案可以用以下指令
; |* x& \1 g0 _) A
split -b 50m file.tar.gz (m 可以改成G(giga))
5 q( }, }. P |. H
若要合併 可以用cat 指令把那些小檔案合併成一個大檔案 例如:
( M9 [' k1 [! h4 W% m- a
cat xaa xab xac xad xae xaf > file.tar.gz
* L* W2 ~9 E- Z0 F. D
W' z# y Q5 r5 \! t# Z
( z# I3 r0 v+ m, F5 j: L1 ]5 m
參考自 :
F. M+ Q i- l4 \) r$ k
http://note.drx.tw/2008/04/command.html
( N# @' J i7 \/ Q5 R
% b8 {* n; G3 Q4 f
歡迎光臨 52AV手機A片王|52AV.ONE (https://www.52av.one/)
Powered by Discuz! X3.2