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 各種壓縮與解壓縮指令:
% [: A7 [2 M' k4 n/ q4 h
.tar
7 L- y# c3 R; {1 i3 G6 I8 S
.gz
" ~& i& {9 N4 R+ W: v( L
.tar.gz
& D$ `$ Z4 B9 d: i3 v
更新tar.gz壓縮檔內某一個檔案或某目錄內幾個檔案:
例如
4 X/ r9 \! `" J0 D, k. d: a, e
參考:
https://askubuntu.com/questions/ ... pdate-a-tar-gz-file
9 _( k& I, o& n
1.)先將.tar.gz解壓為.tar
- C7 [$ U) s! t) C
gunzip filename.tar.gz
; {: m7 t" j8 f3 K( j5 K
2.)更新.tar
2 ^7 C: S! T/ }5 f- i
tar -uvf filename.tar new_file 或
: j5 W$ Z+ l" l) u% ^3 B1 u6 b
tar -uvf filename.tar subdir/*
) i6 {$ }: S. y2 L- B7 N7 p% x( c
3.)壓縮已更新檔.tar
/ n* q& B# @* b$ B s( ]. G2 B
gzip filename.tar
" N+ \- b/ N! _4 `* F
5 r2 M( k# e) b( A7 ^' M
排除不想壓縮的目錄或檔案:
例如
* ~) K1 ]) d2 F: h1 w8 z8 t; r
要備份的目錄是 aaa
' }: K0 R; g. F$ A# F
不想要備份的是 aaa 裡面的 bbb 子目錄
- a( x, t/ T8 i# Q/ [
tar zpcvf aaa_backup.tar.gz --exclude=./aaa/bbb ./aaa
5 f W! l& R7 g
5 |/ E+ x, ?$ v {5 Z6 @
壓縮不包含路徑資訊(絕對路徑):
例如
8 |+ n# G6 V+ o, q* L7 ?' u9 H
我要壓縮 /home/user1/tmp/* ,(有 a.txt ,b.txt)不管目前工作目錄在哪,都可以去掉目錄資訊,例如 目前工作目錄在 /
0 m( r& l" G% b u9 }; x1 T
# tar -zcvf tmp.tar.gz -C /home/user1 tmp (tmp前有一個空格)不保留" /home/user1"路徑
3 x5 R& @' {5 X- K& ^9 T
# tar -ztvf tmp.tar.gz
* a/ t; e9 H4 F2 E7 n% _
drwxrwxr-x user1/user1 0 2018-04-07 12:10 tmp/
$ T2 W/ w' Y0 U: G! W2 d
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 tmp/a.txt
9 R" p- U0 z% v) J
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 tmp/b.txt
, ~' h7 X! |9 w" t8 \
# tar -zcvf tmp.tar.gz -C /home/user1/tmp . (tmp後有一個空格再一點)不保留" /home/user1/tmp"路徑
: r: }9 A9 W. `' w, a
# tar -ztvf tmp.tar.gz
; R. Y" i M3 r8 r) ^& Q
drwxrwxr-x user1/user1 0 2018-04-07 12:10 ./
$ ]) p( h( d+ j% w5 E8 u
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 ./a.txt
. R8 @8 P0 j4 W9 @4 v, F
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 ./b.txt
4 ~4 k3 X& u9 t. M2 X0 t8 X
目前工作目錄在 /home/user1
, q2 z# J5 E0 D+ g' b3 Q
# tar -zcvf tmp.tar.gz tmp
z9 {/ [; h2 }. K: C
# tar -ztvf tmp.tar.gz
! {& S) P$ S3 t4 D
drwxrwxr-x user1/user1 0 2018-04-07 12:10 tmp/
2 v B! K7 |7 t1 z; |4 k% `
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 tmp/a.txt
$ H; u# e" C9 S! X8 Y. o
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 tmp/b.txt
; z# t3 @+ R6 s0 y5 m& q
# tar -zcvf tmp.tar.gz -C tmp . (有一點喔)不保留" tmp"路徑
) C+ }6 F) O% V0 O4 c
# tar -ztvf tmp.tar.gz
1 i) {1 q! E' F4 t$ b
drwxrwxr-x user1/user1 0 2018-04-07 12:10 ./
8 ?$ ]6 |, d* {7 A% I( i7 i: b
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 ./a.txt
5 C4 c, v7 f: S' ]
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 ./b.txt
7 S% p. a3 e8 C4 `
: X, k( G( K+ Q2 i* M
解壓縮到指定的目錄
例如 解壓/home/user1/tmp.tar.gz 到 /home/user1/tmp 工作目錄在/home/user1
( l" u; X+ E8 F$ j7 g3 E' J1 e
# tar -C tmp -zxvf tmp.tar.gz 可以使用相對路徑, -C(大寫)一定要接在tar後面,其他位置都不行
+ f5 z; d: j5 C4 N; g+ o5 e! s
# tar -C /home/user1/tmp -zxvf tmp.tar.gz 可以使用絕對路徑
/ f% M- m V: ^
如果工作目錄在/home 以外的位置就要使用絕對路徑
* N) m: y5 g3 y+ k; g: x h
.bz
- |8 m) a) k( \4 c( R- H7 U
.tar.bz
! m6 F" B( R3 b! n- t9 @$ B
.bz2
- E" i4 f; N$ a4 ?
.tar.bz2
% E- q4 a7 O- A( T& E( x% ]5 f0 G* ]
.xz
" S6 s7 A1 L3 R( k
.tar.xz
; l; k) Z) ^% h& G8 `0 ^# w# [
.Z
' ^) l1 w" Y+ n1 [( I) U
.tar.Z
. i7 K& p, u3 [. f& O; [
.tgz
& I9 T6 |5 }+ }; O: A: v
.tar.tgz
- |. {$ D. G' d/ }8 a, P
.7z
% A4 H! \! @( K: p
.zip
1 b, D( U4 x# {: M8 C
.rar
% U5 h) F0 v' M- s
.lha
0 D+ r' j( P# N s
6 `. w% P- w8 A5 m N! A
split : 大檔分割成小檔例如:
. M8 s B* z2 u6 {
把一個500MB的檔案(file.tar.gz),分割成每個檔50M的小檔案可以用以下指令
3 i; M2 F9 G* K
split -b 50m file.tar.gz (m 可以改成G(giga))
. l/ Q2 H3 r7 B8 q
若要合併 可以用cat 指令把那些小檔案合併成一個大檔案 例如:
' g0 b5 H1 v3 n
cat xaa xab xac xad xae xaf > file.tar.gz
: F) J* H/ j l+ b6 ]& p5 @5 A& b
$ U0 ~ P# u* b4 p
. ^6 b8 l0 n" a. J6 v$ j' }
參考自 :
$ e( C9 R- k2 ^/ n) v
http://note.drx.tw/2008/04/command.html
) y! H! L( q; c. u# X1 k# Z) F
" o, x# [' y8 y+ Q1 {
歡迎光臨 52AV手機A片王|52AV.ONE (https://www.itech.casa/)
Powered by Discuz! X3.2