試験運用中なLinux備忘録・旧記事

はてなダイアリーで公開していた2007年5月-2015年3月の記事を保存しています。

XZ圧縮されたファイルの扱いについて(後半)

XZ圧縮されたファイルの扱いについて(前半)」の続き。

xzコマンドの圧縮率指定

xzコマンドのオプションとして圧縮率オプションが(gzipやbzip2同様に)存在する。が、最も高速・低圧縮なのが-0である(-1ではない)点に注意。

高速・低圧縮率       ...       低速・高圧縮率
-0(--fast) -1 -2 -3 -4 -5 -6 -7 -8 -9(--best)

圧縮済みのファイルに対する操作を行うコマンド

圧縮されたファイルに対して操作を行える

  • xzcat(伸長した各データを結合し標準出力へ)
  • xzdiff(伸長したデータどうしの差分を取る)
  • xzless(伸長したデータをlessで開く)
  • xzgrep(伸長したデータから指定パターンを検索)

などのコマンドが存在し、これらはgzip形式の各コマンド名(zcatなど)の先頭に「x」を付けたもの*1となっている。

GNU tar 1.22以上で.tar.xzファイルを一発で作成/テスト/展開

GNUtarコマンドのバージョン1.22以上では複数ファイルをTARボールにまとめつつXZ圧縮を行う操作(作成/テスト/展開)がgzipやbzip2の形式と同じような感覚で行える。
gzipで「z」、bzip2で「j」(小文字)を指定していたのを「J」(大文字)と指定することでXZ Utilsのコマンドを内部で呼び出して処理する。

(作成・端末出力なし)
$ tar Jcf [出力する.tar.xzファイルの場所] [入力するファイルやディレクトリ...]
(作成・詳細出力)
$ tar Jcvf [出力する.tar.xzファイルの場所] [入力するファイルやディレクトリ...]

(テスト)
$ tar Jtf [.tar.xzファイルの場所]
(テスト・詳細表示)
$ tar Jtvf [.tar.xzファイルの場所]

(展開・端末出力なし)
$ tar Jxf [.tar.xzファイルの場所]
(展開・詳細出力)
$ tar Jxvf [.tar.xzファイルの場所]

GUIアプリケーションの.tar.xzファイルの対応状況

GNOMEFile Rollerはバージョン2.28.1の時点で対応済み(読み書きともにOK)。
KDEArkはバージョン4.3.2の時点では.tar.xzファイルを開けるが、一覧に.tarファイルが表示され、更にそのtarボールを開くという流れになる。「.txz」の拡張子の場合は開けない。
XfceXarchiverはバージョン0.5.2の時点で未対応。

関連記事:

関連URL:

使用したバージョン:

  • XZ Utils 4.999.9beta
  • tar 1.22
  • File Roller 2.28.1
  • Ark 4.3.2
  • Xarchiver 0.5.2

*1:同様にbzip2形式では「b」、LZMA形式では「l」が付いている