Linuxでファイルを効率的に圧縮・解凍する方法



Windowsの右クリックメニューや分かりやすいツールに慣れていると、Linuxで圧縮ファイルを扱うのは簡単ではありません。特にターミナルを使って素早く操作したり、自動化したりしたい場合は、GUIのオプションが限られていたり、単純に分かりにくかったりすることもあります。そこで、Linuxでファイルを圧縮・解凍する一般的な方法と、実際に時間を節約できるかもしれないいくつかのコツを、より具体的に解説します。コマンド、ファイルパス、オプションの確認方法などを理解しておくことが重要です。Linuxは圧縮ツールに関して、正直言って少々難解なところがあります。この記事の目的は、GUIで素早く圧縮する場合でも、ターミナルでスクリプトを作成する場合でも、大規模なデータアーカイブを扱う場合でも、作業内容に応じて適切なツールを選択できるように支援することです。コマンドとその場所についてより明確な理解が得られるだけでなく、最初はうまくいかないかもしれませんが、試してみる価値のある実用的なヒントもいくつか紹介します。

Linuxでファイルを圧縮・解凍する方法 – 普通の人と同じように

Linux のグラフィカル ツールを使用して Zip 圧縮と解凍を行う

ほとんどのLinuxデスクトップには、便利なアーカイブマネージャー(Archive Managerなどと呼ばれることが多い)が付属しています。ターミナルコマンドを煩わしく操作するよりも、クリック操作で操作したいという方には、これが最も簡単な方法です。しかし、正直なところ、GUIには多少の制限があったり、一貫性が欠けていると感じる場合があり、オプションもディストリビューションによって異なります。それでも、ファイルを素早く圧縮したいときには便利です。

動作しない場合は、GUI アプリがインストールされているかどうかを確認してください。メニュー > アクセサリまたはユーティリティsudo apt install file-rollerを確認するか、「アーカイブ マネージャー」を検索してみてください。Ubuntuや Fedora などのパッケージ マネージャー経由でインストールする必要がある場合もありますsudo dnf install FileRoller

ターミナルでやる方法 – 本当のやり方

何をすればいいのか分かっているなら、ターミナルに勝るものはありません。より高速で、より制御しやすく、スクリプトも書けます。それに、慣れればかなり満足感があります。ここでは、最も一般的なツールを使った、よくある裏技をご紹介します。

ターミナルでファイルを圧縮する

  • でディレクトリに移動しますcd /path/to/directory
  • 次のコマンドを使用してくださいzip -r archive_name.zip folder_or_files-r(再帰)フラグは、フォルダを圧縮する場合、すべてのサブフォルダとファイルも圧縮対象に含めることを意味します。例えば、zip -r myfiles.zip Documents
  • 裏では圧縮を行い、より小さなアーカイブを作成します。処理中にファイル名と圧縮率が表示されます。

プロのヒント: 複数のファイルを一度に zip 圧縮できます:zip myfiles.zip file1.txt file2.jpg image.pngまたは、 を使ってフォルダー内のすべてのファイルを zip 圧縮できますzip -r mystuff.zip /path/to/folder

ターミナルでファイルを解凍する

  • アーカイブがあるディレクトリに移動するか、フルパスを指定することを忘れないでください。
  • タイプ:unzip archive_name.zip基本的なものですが、効果的です。
  • ファイルは現在のフォルダに解凍されます。別の場所に解凍したい場合は、「-d」に続けて保存先のパスを指定してください。例:unzip archive_name.zip -d /my/extract/path.

セットアップによっては、sudo権限が厳しい場合に実行する必要があることに気付くかもしれません。これは奇妙かもしれませんが、それが Linux なのです。

Bzip2 の使用 — 古き良き単一ファイル

単一ファイル圧縮に近いです。テキストファイルを個別に圧縮したい場合はBzip2が便利ですが、複数のファイルを1つのアーカイブにまとめることはできず、各ファイルは個別に圧縮されます。

  • 圧縮するには: bzip2 -kv9 filename.txt-k元の状態を保持し、-v は詳細な出力を生成し、9 は最大圧縮率です (ただし、時間がかかります)。
  • 解凍するには:bzip2 -kvd filename.txt.bz2-d解凍を意味します。元のファイルを復元しますが、通常は.bz2 拡張子は削除されます。

Gzip — 軽量コンパニオン

Gzipも同様ですが、多くの場合、より高速です。単一のファイルやデータストリームを圧縮するためによく使用されます。圧縮するには:gzip -kv9 filename.txt。解凍するには:gunzip filename.txt.gz。簡単です。

アーカイブのボス、Tarとの組み合わせ

tar の特徴は、複数のファイルを単一のアーカイブにまとめるアーカイバであり、圧縮には gzip を組み合わせることが多いことです。そのため、大きな圧縮パッケージが作成され、バックアップやネットワーク経由のデータ送信に最適です。

  • gzip圧縮されたアーカイブを作成します。tar -czvf archive_name.tgz directory_to_compressオプションはたくさんありますが、これで十分です。
    • -c: 作成
    • -z: gzip
    • -v: 詳細(進行状況を表示)
    • -f: ファイル名

解凍するには:tar -xzvf archive_name.tgz。これにより、現在のディレクトリにすべてが復元され、元の構造と一致します。ただし、オプションを変更しない限り、アーカイブ内のディレクトリ構造はそのまま維持されることに注意してください。

あまり知られていないが便利なツール:LZMAとXZ

圧縮アルゴリズムに興味がある場合、これらは適切なオプションですが、あまり一般的ではありません。

  • ヘルプページで と を確認してくださいlzma --helpxz --help通常、圧縮と解凍には別々のコマンドが必要で、スクリプトや特殊なシナリオでよく使用されます。

他の方法はありますか?

ええ、もちろんです。Linuxには7-Zip(p7zip経由)、Zstandard(zstd)、そしてもっと絵に描いたようなGUIツールなど、他にもたくさんのツールがあります。ここで紹介した従来のオプションで限界を感じたら、これらを試してみる価値はあるかもしれません。

結局のところ、それぞれの使い分けが重要です。GUIは使いやすいですが、自動化と高度な制御にはターミナルの方が優れています。ある程度の試行錯誤が必要になることを覚悟してください。ディストリビューションやデスクトップ環境によっては、この方法がうまくいかない場合があります。設定によっては、コマンドの調整や追加パッケージのインストールが必要になる場合があります。しかし、一度使いこなせれば、作業ははるかに楽になります。



この記事は役に立ちましたか?