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 各種壓縮與解壓縮指令:
0 W; B5 F9 M& x
.tar
/ N4 _0 ?) ]* k0 R1 r
.gz
: B j2 V; Q, t0 D1 x- b) N
.tar.gz
' j- R% {0 j' a- J |7 g
更新tar.gz壓縮檔內某一個檔案或某目錄內幾個檔案:
例如
% {% i% ^6 B; z: t8 ]- d
參考:
https://askubuntu.com/questions/ ... pdate-a-tar-gz-file
( Q m9 `+ H& u- C/ I- D
1.)先將.tar.gz解壓為.tar
4 A Z7 [1 [2 ?! M. N
gunzip filename.tar.gz
+ p- M* a$ ^* D# V
2.)更新.tar
1 C( p/ o O; x9 s" N+ G
tar -uvf filename.tar new_file 或
5 O( `# y* I2 Q7 F5 _/ N
tar -uvf filename.tar subdir/*
X9 U8 k- \) R' I
3.)壓縮已更新檔.tar
! e6 P% q' T A3 C9 H
gzip filename.tar
, w" N3 O% y2 P, W
& F. t, t, e6 J$ S$ ]
排除不想壓縮的目錄或檔案:
例如
7 `% K2 e8 }1 {! _
要備份的目錄是 aaa
% |. `% i1 J2 |& e( D, F" q
不想要備份的是 aaa 裡面的 bbb 子目錄
5 E: v+ {. P, \* p" j* E
tar zpcvf aaa_backup.tar.gz --exclude=./aaa/bbb ./aaa
5 i' m- n. d* }/ ~; H
3 N& a2 L* a' x R' X, y
壓縮不包含路徑資訊(絕對路徑):
例如
3 W2 H; }9 M- L. v9 n) c
我要壓縮 /home/user1/tmp/* ,(有 a.txt ,b.txt)不管目前工作目錄在哪,都可以去掉目錄資訊,例如 目前工作目錄在 /
! N; w% g, a( ^* {: ?4 X
# tar -zcvf tmp.tar.gz -C /home/user1 tmp (tmp前有一個空格)不保留" /home/user1"路徑
2 ~% u6 z e! \ |
# tar -ztvf tmp.tar.gz
& B+ d9 Y5 @1 s+ N9 N( f( Q
drwxrwxr-x user1/user1 0 2018-04-07 12:10 tmp/
# K5 }0 Q3 J' [" J4 p0 n3 S! T
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 tmp/a.txt
4 W' k" p3 C0 i( |
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 tmp/b.txt
. o1 ~. M, J/ ?8 a
# tar -zcvf tmp.tar.gz -C /home/user1/tmp . (tmp後有一個空格再一點)不保留" /home/user1/tmp"路徑
5 l3 a0 |9 e8 r! L1 V+ H+ {% o
# tar -ztvf tmp.tar.gz
4 W h) x( L8 y8 o6 K, z# w4 O2 K A
drwxrwxr-x user1/user1 0 2018-04-07 12:10 ./
* r3 W3 ^, g! R1 T3 d% M
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 ./a.txt
, N* _. d: H0 }- T" h( O
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 ./b.txt
2 P; T8 o2 X( p4 n: O
目前工作目錄在 /home/user1
- k8 @" D) y2 z" W- T8 T; j
# tar -zcvf tmp.tar.gz tmp
1 _& N% {( q. }% }' Y% Y
# tar -ztvf tmp.tar.gz
M/ ]5 K* }4 K
drwxrwxr-x user1/user1 0 2018-04-07 12:10 tmp/
! I4 m/ K- c: F
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 tmp/a.txt
0 k$ b1 W: |& z5 U. f6 f1 t% x
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 tmp/b.txt
" B7 A3 r4 @$ A1 F" R
# tar -zcvf tmp.tar.gz -C tmp . (有一點喔)不保留" tmp"路徑
5 T% V; T! ? s% G3 v- Q$ X
# tar -ztvf tmp.tar.gz
) k5 f8 `6 B7 M
drwxrwxr-x user1/user1 0 2018-04-07 12:10 ./
, c+ V5 ^, F! l% V. |; u n e
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 ./a.txt
9 |) A* _# P* H% \' ~. u2 W s8 C
-rw-rw-r-- user1/user1 13 2018-04-07 12:10 ./b.txt
7 M* j7 o6 D- s3 }3 T' K
2 o ?. G- u+ N: D, @* _: `3 W9 ~2 t9 ^
解壓縮到指定的目錄
例如 解壓/home/user1/tmp.tar.gz 到 /home/user1/tmp 工作目錄在/home/user1
) x4 W+ b( a+ i# v/ B* |
# tar -C tmp -zxvf tmp.tar.gz 可以使用相對路徑, -C(大寫)一定要接在tar後面,其他位置都不行
) N+ f1 \4 Y" Q! I7 l& K; O
# tar -C /home/user1/tmp -zxvf tmp.tar.gz 可以使用絕對路徑
. c* x; E5 y* [5 z
如果工作目錄在/home 以外的位置就要使用絕對路徑
$ v8 n6 X( h3 f& a2 _
.bz
4 ~3 F: O* O' X- b6 Z7 y
.tar.bz
|3 h5 ?# B$ ?
.bz2
3 f3 l! e5 D) i8 @7 G. P1 q' z8 w& u
.tar.bz2
5 f8 o O! X* x- e0 e7 Z
.xz
U( h( G- |4 I S. V
.tar.xz
! Y1 O: I: E: M$ k: M
.Z
3 d# V9 U1 A4 f& h
.tar.Z
" t/ N$ ?/ t ?
.tgz
, C/ a! E/ f- t' C" d/ S4 Q
.tar.tgz
/ R$ K2 d$ _* J( I& Y% [
.7z
; U$ `. H7 N G! D b% k
.zip
: }( ^- E: K) g' V, F
.rar
5 u% n3 z J/ I& k+ S' x: k6 N1 d9 @
.lha
. w" d0 I+ Y8 n, ^4 m9 l/ b
1 O$ v6 o' B: I. h& y' L7 f
split : 大檔分割成小檔例如:
+ I$ H1 L; G2 S! q4 a0 z
把一個500MB的檔案(file.tar.gz),分割成每個檔50M的小檔案可以用以下指令
! @ C; z/ ^+ }5 s- e) O
split -b 50m file.tar.gz (m 可以改成G(giga))
" T! F& U6 L5 Z$ U6 l& r ?8 I
若要合併 可以用cat 指令把那些小檔案合併成一個大檔案 例如:
7 E% N$ Q+ q H
cat xaa xab xac xad xae xaf > file.tar.gz
9 r. z7 N$ g, m# s: l
w0 N+ e8 I& f3 N, ?( a: |
8 Y" w) t& G5 a5 H% w _; X
參考自 :
9 t8 `4 x! f& G; u3 b
http://note.drx.tw/2008/04/command.html
8 }' |5 n M( v- T
% g4 r" M$ `8 o' d/ e6 i v+ K
歡迎光臨 52AV手機A片王|52AV.ONE (https://www.52av.one/)
Powered by Discuz! X3.2