Linux環境では、さまざまな形式の圧縮ファイルが日常的に利用されます。その中でも「.xz」形式は、高い圧縮率とパフォーマンスで知られ、ソースコードやログファイルなどの配布に多く使われています。この「.xz」ファイルを解凍する際に使われるのが、unxz
コマンドです。
この記事では、Linux初心者でも理解できるように、unxz
コマンドの基本的な使い方から応用的な活用法までを詳しく解説します。コマンドの書き方、オプションの意味、実行例などを交えながら、実践的な知識を身につけましょう。
.xz
形式は、LZMA2圧縮アルゴリズムを用いた高効率な圧縮フォーマットです。.tar.xz
としてアーカイブファイルと組み合わさって使用されることも多く、DebianやArch LinuxなどのLinuxディストリビューションで頻繁に見かけます。
unxz
コマンドは、この.xz
ファイルを解凍(展開)するためのシンプルなユーティリティです。元はxz-utils
というパッケージに含まれており、コマンドの役割は「圧縮されたファイルを元に戻す」ことに特化しています。
例えば、sample.txt.xz
というファイルがあるとき、unxz
を使うと元のsample.txt
を取り出すことができます。
基本的な構文は非常にシンプルです。
unxz ファイル名.xz
このコマンドを実行すると、.xz
拡張子のファイルが解凍され、元のファイルが出力されます。
unxz data.csv.xz
このコマンドを実行すると、data.csv.xz
が解凍されて、data.csv
が生成されます。元のdata.csv.xz
ファイルは削除される点に注意しましょう(デフォルトの動作)。
unxz
の標準動作では、解凍後に元の.xz
ファイルが削除されます。しかし、ファイルを残したい場合は、-k
オプション(keep)を使用します。
unxz -k ファイル名.xz
unxz -k report.log.xz
この場合、report.log.xz
はそのまま残りつつ、report.log
が解凍されます。バックアップを取りながら作業したい場合などに便利です。
ディレクトリ内の複数の.xz
ファイルをまとめて展開したいときは、ワイルドカードを使います。
unxz *.xz
このコマンドは、カレントディレクトリ内にあるすべての.xz
ファイルを順次展開していきます。元ファイルはすべて削除されるので、必要に応じて-k
オプションと組み合わせましょう。
unxz -k *.xz
unxz
コマンドでは、展開後のファイル名は単純に.xz
の拡張子を取り除いたものになります。
例えば:
archive.tar.xz
→ archive.tar
notes.txt.xz
→ notes.txt
中身のファイル名を変更したい場合は、展開後にmv
コマンドでリネームするなどの対応が必要です。
実は、unxz
はxz
コマンドの解凍機能に特化したバージョンとも言えます。xz
コマンドに-d
(decompress)オプションを付ければ、unxz
と同じ動作になります。
xz -d file.txt.xz
これは以下と同じ意味です:
unxz file.txt.xz
また、圧縮したいときには逆に以下のようにします:
xz file.txt
この場合、file.txt
はfile.txt.xz
に圧縮され、元ファイルは削除されます。
多くのLinuxディストリビューションでは、unxz
はxz-utils
パッケージの一部として提供されています。もしunxz
が利用できない場合は、以下のコマンドでインストールしましょう。
sudo apt install xz-utils
sudo dnf install xz
または、
sudo yum install xz
sudo pacman -S xz
インストール後は、unxz
やxz
コマンドが利用できるようになります。
いくつか、unxz
コマンドを使用する際に注意しておきたいポイントを紹介します。
.xz
ファイルは削除されます。復元不能になることもあるので、必要なら-k
オプションを使いましょう。.gz
や.zip
ファイルは対象外です。それぞれに対応したコマンド(gunzip
, unzip
など)を使う必要があります。.xz
ファイルを展開しようとすると、「File format not recognized」などのエラーが表示されます。ダウンロードが完了しているか、転送中に壊れていないかを確認してください。unxz
は、Linuxにおける.xz
ファイル解凍に特化した便利なツールです。基本的な構文もシンプルで、オプションも少ないため、初心者でも安心して使えるのが特徴です。
.xz
ファイルを簡単に解凍できる-k
オプションで元ファイルを残せる*.xz
で複数ファイルの一括展開も可能xz
コマンドとの関係も覚えておくと便利Linuxでファイル圧縮・展開を扱う際の基本スキルとして、ぜひ覚えておきたいコマンドです。習得しておくと、日常的なファイル管理がグッと効率化されますよ。