この質問を改善したいですか? この投稿を編集して、詳細を追加し、問題を明確にしてください。
4年前に閉鎖されました。
この質問を改善する
1つのコマンドラインでcat、tar、gzipを使用して.tar.gzファイルを解凍およびアーカイブ解除するにはどうすればよいですか?これも可能ですか?
承認された回答:
catは必要ありません またはgzip :
$ tar xvzf archive.tar.gz
オプション文字列はtarに通知します 抽出する(x )冗長モード(v )圧縮された(z )fに続くアーカイブ フラグ。
すべてのcatを使用する 、tar および gzip (これはばかげています、これをしないでください ):
$ cat archive.tar.gz | gzip -d -c | tar xvf -
または
$ gzip -d -c archive.tar.gz | cat | tar xvf -
-が与えられた場合 ファイル名として、tar 標準入力からアーカイブを読み取ります。
最後の2つの例は、一般に「catの無用な使用」と呼ばれるものに悩まされています 「、catだけなので パイプラインの次の部分にデータをシャッフルすることです。
catのない少し良いバージョン :
$ gzip -c -d archive.tar.gz | tar xvf -
これは、tarが存在するシステムでの実行方法を知るのに実際に役立つ場合があります。 圧縮されたアーカイブの処理方法がわかりません。
tarに使用した古風なオプション文字列 上記、ダッシュなし(- )その前にあるのは、コマンドラインオプションを指定するためにダッシュが一般的に使用される前の時間です。通常のオプション構文を使用しない他のユーティリティには、ddが含まれます。 およびmt 、ただし、tarのほとんどの実装は 今日理解 新しいダッシュオプション、dd 通常はそうではありません。 mt コマンド(磁気テープの操作を制御する)はいくつかのダッシュオプション(特にLinuxの場合)を取得しましたが、コマンドラインのオプションではない部分は、rewind またはeof 。