本ページはこんな方におすすめ
- UNIX で rar コマンドを使いたい
- Windows コマンドプロンプトで rar を使いたい
- Cygwin で rar コマンドを使いたい
私はファイル圧縮、アーカイブツールと言えば rar の使用歴が長く、Windows 3.1 のときからの愛用者でもあります。
アーカイバーとしては、当時は LZH とかも ZIP 以上にメジャーだった感があります。でも、圧縮率で言えば RAR が最も優秀で、特にアーカイブファイルを小刻みに分割して、CD-R などにバックアップできる機能は手放せないツールでした。
その影響で、私の場合は Windows でも UNIX 系でも RAR をメインに使うのですが、その時、いかんせん WIGYNG がウザいことは普通にあります。RAR はコマンドラインから使えることを意外に知られていないので、私が普段常用するコマンドを紹介します。
コマンドですが、コマンドプロンプトなどから rar と打つと、コマンド、スイッチの種類が表示されますのでね使えるものを組み合わせて使います。
bash
# rar
まずは rar 書庫の中身を確認(と標準オプション)
unrar -l test.rar
オプション
|
意味
|
e
|
現在のディレクトリに展開する |
l
|
アーカイブに含まれるファイル一覧を表示する |
lt
|
アーカイブに含まれるファイル一覧(テクニカル)を表示する |
lta
|
アーカイブに含まれるファイル一覧(テクニカルすべて)を表示する |
lb
|
アーカイブに含まれるファイル名のみ |
p
|
ファイルを標準出力に表示する |
v
|
詳細なファイル一覧を表示する |
x
|
フルパスでファイルを展開する |
-ep1
|
名前からベースフォルダを除外 |
特定のファイル名を持つファイルを片っ端から書庫に加える
unix コマンドと組み合わせて処理します。
find . -type f -name 'index.html' | xargs rar a -m5 index.rar
カレントディレクトリ以下にある index.html を片っ端から index.rar に追加します。
find . -type f -name 'index.html' | xargs rar a -df -m5 index.rar
カレントディレクトリ以下にある index.html を片っ端から index.rar に追加して、追加完了した元ファイル削除します。
RAR 作成の基本
RAR コマンドは膨大にオプションがあるので、まずは、よく使うものだけマスターしておきます。
rar <コマンド> <書庫>[追加するファイル]
コマンド
a 書庫にファイルを圧縮します。
d 書庫からファイルを削除します。
<コマンド>の後に<スイッチ>をマイナス記号のあとに付記して、パスを除外したり、圧縮方法を変えたりできます。
rar a archive.rar file1.jpg file2.png file3.psd
最高圧縮して書庫を作成
rar a -m5 archive.rar file1.jpg file2.png file3.psd
ディレクトリごと最高圧縮して書庫を作成
rar a -m5 210823072821.rar 210823072821
bash
[root@BSD /data]# rar a -m5 210823072821.rar 210823072821
RAR 6.02 Copyright (c) 1993-2021 Alexander Roshal 11 Jun 2021
Trial version Type 'rar -?' for help
Evaluation copy. Please register.
Creating archive 210823072821.rar
Adding 210823072821/img-210823072821-001.tif OK
Adding 210823072821/img-210823072821-002.tif OK
Adding 210823072821/img-210823072821-003.tif OK
Adding 210823072821/img-210823072821-004.tif OK
Adding 210823072821/img-210823072821-005.tif OK
Adding 210823072821/img-210823072821-006.tif OK
Adding 210823072821/img-210823072821-007.tif OK
Adding 210823072821
rar a -df -m5 210823072821.rar 210823072821
書庫に追加して、元のファイルを消去する場合
bash
[root@BSD /data]# rar a -df -m5 210823072821.rar 210823072821
RAR 6.02 Copyright (c) 1993-2021 Alexander Roshal 11 Jun 2021
Trial version Type 'rar -?' for help
Evaluation copy. Please register.
Creating archive 210823072821.rar
Adding 210823072821/img-210823072821-001.tif OK
Adding 210823072821/img-210823072821-002.tif OK
Adding 210823072821/img-210823072821-003.tif OK
Adding 210823072821/img-210823072821-004.tif OK
Adding 210823072821/img-210823072821-005.tif OK
Adding 210823072821/img-210823072821-006.tif OK
Adding 210823072821/img-210823072821-007.tif OK
Adding 210823072821 OK
Deleting 210823072821/img-210823072821-007.tif deleted 12%
Deleting 210823072821/img-210823072821-006.tif deleted 25%
Deleting 210823072821/img-210823072821-005.tif deleted 37%
Deleting 210823072821/img-210823072821-004.tif deleted 50%
Deleting 210823072821/img-210823072821-003.tif deleted 62%
Deleting 210823072821/img-210823072821-002.tif deleted 75%
Deleting 210823072821/img-210823072821-001.tif deleted 87%
Deleting directory 210823072821 deleted 100%
Done
[root@BSD /data]#
名前からベースフォルダを除外して書庫を作成
rar a -ep1 img img/*
img/*
、つまりフォルダ以下を rar で固めて、img.rar
という書庫を作成します。
ちなみに、img.rar の .rar
の部分は省略できまする
そのままねデフォルトの拡張子が付きます。
bash
[root@BSD /data]# rar a -ep1 img img/*
RAR 5.91 x64 Copyright (c) 1993-2020 Alexander Roshal 25 Jun 2020
登録者: grazie
書庫 img.rar を作成しています
追加中 img\img1.png OK
追加中 img\img2.png OK
追加中 img\img3.png OK
追加中 img\img4.png OK
追加中 img\img5.png OK
完了
これで、img.rar という書庫ができますが、img
というフォルダは書庫に含まれず、そのまま img フォルダの中身が、そのまま書庫のルートフォルダに格納されます。
オプション-ep1
は、フォルダを直接指定した場合は、ルートフォルダが格納されます。
rar a -ep1 img.rar img
とやると、img
というフォルダは、書庫に格納されます。なぜならば、アスタリスク等でファイルを個別に指定していないからです。
bash
$ rar a -ep1 img.rar img
RAR 5.91 x64 Copyright (c) 1993-2020 Alexander Roshal 25 Jun 2020
登録者: grazie
書庫 img.rar を作成しています
追加中 img\img1.png OK
追加中 img\img2.png OK
追加中 img\img3.png OK
追加中 img\img4.png OK
追加中 img\img5.png OK
追加中 img OK
完了
$ rar l img.rar
bash
$ rar lb img.rar
img\img1.png
img\img2.png
img\img3.png
img\img4.png
img\img5.png
img