Linux 圧縮および解凍 tar コマンド

tar [-cxtzjvfpPN] ファイルとディレクトリ....
パラメーター:
-c: 圧縮ファイルを作成する (作成を意味する) パラメーター コマンド;
-x: 圧縮ファイルを解凍するパラメーター コマンド!
-t: tarfile 内のファイルを表示します!
パラメータの分布では、c/x/t は 1 つしか存在できないことに特に注意してください! 同時に存在することはできません!
圧縮と解凍を同時に行うことは不可能だからです。
-z : gzip 属性も持っていますか? つまり、gzip で圧縮する必要がありますか?
-j: bzip2 の属性も持っていますか? つまり、bzip2 で圧縮する必要がありますか?
-v : 圧縮中にファイルを表示します! これは一般的に使用されますが、バックグラウンドでの実行はお勧めしません!
-f: ファイル名を使用します。ファイル名は f! の直後に続く必要があることに注意してください。パラメータを追加しないでください。
   たとえば、「tar -zcvfP tfile sfile」を使用するのは間違った書き方です。
   「tar -zcvPf tfile sfile」と書く必要があります。
-p : 元のファイルの元の属性を使用します (属性はユーザーによって変更されません)
-P : 絶対パスを使用して圧縮できます!
-N : 次の日付 (yyyy/mm/dd) より新しいものは、新しく作成されたファイルにパッケージ化されます!
--exclude FILE: 圧縮中に FILE をパックしません!
例:
例 1: /etc ディレクトリ全体のすべてのファイルを /tmp/etc.tar にパッケージ化します。
[root@linux ~]# tar -cvf /tmp/etc.tar /etc<==パッケージングのみ、圧縮なし! // コマンドの後に ***.tar とディレクトリ名が続きます。. .
[root@linux ~]# tar -zcvf /tmp/etc.tar.gz /etc<==gzip で圧縮・圧縮
[root@linux ~]# tar -jcvf /tmp/etc.tar.bz2 /etc< = =パッケージング後、bzip2 で圧縮します。
# 特に注意してください。パラメータ f の後のファイル名は自分で選択し、通常は .tar を識別に使用します。
# zパラメータを付ける場合は.tar.gzまたは.tgzでgzip圧縮したtarファイルを表現してください~ #
jパラメータを付ける場合は.tar.bz2を添付ファイル名にしてください~
# 上記コマンドを実行するとを実行すると、警告メッセージが表示されます:
# 『tar: メンバー名から先頭の `/" を削除します』これは、絶対パスに関する特別な設定です。

例 2: 上記の /tmp/etc.tar.gz ファイルに含まれるファイルを確認?
[ root@linux ~]# tar -ztvf /tmp/etc.tar.gz
# gzip 圧縮を使用しているため、tar ファイル内のファイルをチェックする場合、
# z パラメータを追加する必要があります! これは非常に重要 !

例 3: /usr/local/src 配下の /tmp/etc.tar.gz ファイルを解凍
[root@linux ~]# cd /usr/local/src
[root@linux src]# tar -zxvf /tmp/etc.tar.gz
# デフォルトでは、圧縮ファイルをどこにでも解凍できます! この例では、
# 最初に作業ディレクトリを /usr/local/src に変更し、/tmp/etc.tar.gz を解凍します。
# 解凍したディレクトリは /usr/local/src/etc になります。さらに、/usr/local/src/etc
# と入力すると、このディレクトリのファイル属性が /etc/ のファイル属性と異なる場合があることがわかります。

例 4: /tmp の下で、/tmp/etc.tar.gz の etc/passwd のロックを解除したいだけ
[root@linux ~]# cd /tmp
[root@linux tmp]# tar -zxvf / tmp/etc.tar .gz etc/passwd
# tar -ztvf で tar ファイル内のファイル名を確認できます。ファイルが 1 つしかない場合は
# この方法でダウンロードできます! 知らせ!etc.tar.gz のルート ディレクトリ / が削除されました。

例 5: /etc/ 内のすべてのファイルをバックアップし、それらのパーミッションを保存します!
[root@linux ~]# tar -zcvpf /tmp/etc.tar.gz /etc
# この -p の属性は、特に元のファイルの属性を保持したい場合に非常に重要です!

例 6: /home で、2005/06/01 以降のファイルのみをバックアップする
[root@linux ~]# tar -N "2005/06/01" -zcvf home.tar.gz /home

例 7: /home、/etc はバックアップしたいが、/home/dmtsai はバックアップしたくない
[root@linux ~]# tar --exclude /home/dmtsai -zcvf myfile.tar.gz /home/* /etc

例 8: Put /etc/ をパッケージ化した後、ファイルを生成せずに /tmp の下に直接展開します。
[root@linux ~]# cd /tmp
[root@linux tmp]# tar -cvf - /etc | tar -xvf -
# このアクションは cp -r /etc /tmp ~ まだ用途があります!
# 出力ファイルが - になり、入力ファイルが - になり、別のファイルがあることに注意してください | ~
# これらは、それぞれ標準出力、標準入力、およびパイプライン コマンドを表します!
# このパートでは、このコマンドについて再度言及し、Bash シェルで説明します!

おすすめ

転載: blog.csdn.net/mldxs/article/details/8229226#comments_25521066