Node.jsをCentOSにインストールしようとした際に、xzコマンドの存在を知りました。 今後、使うことがあるかないかは分かりませんが、基本的な使い方をまとめます。
xzコマンドとは
gzipやbzip2と同様に、コマンドラインで一般的用途のデータを圧縮ツールです。 複数ファイルをまとめる場合は、tarコマンドと組み合わせる手法が一般的。
圧縮ファイルを伸張する
圧縮ファイルを伸張する場合は、xz -d
または unxz
を実行する。
xz -dの場合
$ xz -d node-v12.18.0-linux-x64.tar.xz $ ls node-v12.18.0-linux-x64.tar
unxzの場合
$ unxz node-v12.18.0-linux-x64.tar.xz $ ls node-v12.18.0-linux-x64.tar
xz -d
または unxz
だと伸張前のファイルは残らない。
伸張前のファイルも残したい場合、-k
オプションをつける。
$ xz -dk node-v12.18.0-linux-x64.tar.xz $ ls node-v12.18.0-linux-x64.tar node-v12.18.0-linux-x64.tar.xz
ファイルを圧縮する
ファイルを圧縮する場合は、xz
または xz -z
を実行する。
$ xz node-v12.18.0-linux-x64.tar $ ls node-v12.18.0-linux-x64.tar.xz
伸張時と同様に圧縮後には圧縮前のファイルは残らない。
ファイルを残す場合は -k
オプションが必要になる。
$ xz -k node-v12.18.0-linux-x64.tar $ ls node-v12.18.0-linux-x64.tar node-v12.18.0-linux-x64.tar.xz
まとめ
圧縮・伸張のためのコマンドはいくつかあるが、xzという形式があることを最近知ったので驚いた。 なぜ、今まで見たことがなかったのか不思議ではあるが新しくコマンドを知れたことは良かったと思う。 また、xz形式に出会った際に忘れないようにしておく。