私が走るとき
tar -cvzf archive.tgz file1 file2 ; rm file1 file2
一般的に圧縮されたターボールを生成しますが、それはどのように可能ですか?
tar -xvf archive.tgz
圧縮されていないファイルを返しますか?私はいつも-zフラグが必要だと思いました。
ベストアンサー1
あなたのtar
実装(おそらく最初の実装)は、圧縮のための引数1GNU
に渡されたファイルを検出します。
tar
現在最も一般的な実装は、ファイルの最初のバイト(マジックナンバーとも呼ばれる)をGNU tar
見て、ファイルが圧縮されているかどうか、および使用される圧縮アルゴリズムを決定することです。busybox
tar
もともとAT&Tコードに基づく商用Unixの実装は、最初はこのフラグをサポートしていませんでした-z
。注目すべき例外の1つtar
は、ファイル形式を検出する機能など、この拡張機能が追加されたSolaris 11です。
1他の記事ですでに述べたように、GNU tarはstdinを介して渡されたファイルが圧縮されたかどうかを検出しません。返信するそしてSensorSmithの口コミ。