7zip CLI を使った効率的なファイル圧縮の方法

LinuxBeginner
オンラインで実践に進む

はじめに

7zipは、Linuxシステムで広く使用される多用途のファイル圧縮ユーティリティです。このチュートリアルでは、必要なパッケージのインストール、コアコマンドの理解、およびファイルの効率的な圧縮と抽出の技術の探求を含む、7zipコマンドラインインターフェイス(CLI)の基本的な使い方を案内します。

7zipコマンドラインの使い始め

7zipは、Linuxシステムで広く使用される強力なファイル圧縮ユーティリティです。ユーザーが様々な圧縮と解凍タスクを実行できるコマンドラインインターフェイス(CLI)を提供します。このセクションでは、必要なパッケージのインストール、基本コマンドの理解、およびファイルの圧縮と抽出について、7zip CLIの基本的な使い方を探求します。

Ubuntu 22.04に7zipをインストールする

Ubuntu 22.04システムで7zip CLIを使用するには、p7zip-fullパッケージをインストールする必要があります。ターミナルで次のコマンドを実行することで行えます。

sudo apt-get install p7zip-full

これにより、7zipコマンドラインツールがインストールされ、それを使って7zipアーカイブを操作できるようになります。

基本的な7zip CLIコマンド

7zip CLIは、様々な圧縮と解凍タスクを実行するために使用できるコマンドのセットを提供します。以下は、最も一般的なコマンドのいくつかです。

  • 7z a <archive_name> <file_or_directory>: 指定された名前の新しい7zipアーカイブを作成し、指定されたファイルまたはディレクトリを追加します。
  • 7z x <archive_name>: 7zipアーカイブの内容を現在のディレクトリに抽出します。
  • 7z l <archive_name>: 7zipアーカイブの内容を一覧表示します。
  • 7z t <archive_name>: 7zipアーカイブの整合性をテストします。

たとえば、documentsディレクトリの内容を含む新しい7zipアーカイブexample.7zを作成するには、次のコマンドを実行します。

7z a example.7z documents/

example.7zアーカイブの内容を現在のディレクトリに抽出するには、次のコマンドを実行します。

7z x example.7z

また、7z lコマンドを使ってアーカイブの内容を一覧表示することもできます。

7z l example.7z

これにより、アーカイブに含まれるファイルとディレクトリの一覧が表示されます。

7zipを使ったファイルの圧縮と抽出

7zip CLIは、ファイルの圧縮と抽出に幅広いオプションを提供します。このセクションでは、7zipアーカイブを操作するための、より高度な機能と技術のいくつかを探求します。

圧縮方法とレベル

7zipは、圧縮率と処理時間の面でそれぞれトレードオフがあるさまざまな圧縮方法をサポートしています。最も一般的な圧縮方法は以下の通りです。

  • LZMA:最良の圧縮率を提供しますが、処理に時間がかかります。
  • LZMA2:LZMAの改良版で、より良い性能を提供します。
  • Deflate:高速な圧縮方法で、やや大きなアーカイブを生成します。

新しい7zipアーカイブを作成する際には、-mオプションを使用して圧縮方法を指定できます。たとえば、LZMA2圧縮方法を使用してアーカイブを作成するには、次のコマンドを実行します。

7z a -m0=lzma2 example.7z documents/

7zipはまた、0(非圧縮)から9(最大圧縮)までのさまざまな圧縮レベルをサポートしています。高い圧縮レベルでは、より小さなアーカイブが生成されますが、処理にも時間がかかります。圧縮レベルは-mxオプションを使用して指定できます。たとえば、最大圧縮でアーカイブを作成するには、次のコマンドを実行します。

7z a -mx=9 example.7z documents/

7zipを使ったファイルの抽出

基本的な7z xコマンドに加えて、7zipはアーカイブからファイルを抽出するためのいくつかのオプションを提供します。たとえば、-oオプションを使用して特定のディレクトリにファイルを抽出できます。

7z x example.7z -oexample_dir/

また、7z xコマンドに続けてファイルまたはディレクトリ名を指定することで、アーカイブから特定のファイルまたはディレクトリのみを抽出することもできます。

7z x example.7z documents/file1.txt documents/file2.txt

これにより、アーカイブから指定されたファイルのみが抽出されます。

高度な7zip CLI技術

基本的な7zip CLIコマンドは強力ですが、このツールには、ファイル圧縮と管理のワークフローを効率化するための、幅広い高度な機能と技術も用意されています。このセクションでは、これらのより高度な機能のいくつかを探求します。

スクリプト化と自動化

7zip CLIの主な利点の1つは、スクリプトや自動化されたワークフローに統合できることです。これは、定期的にファイルやディレクトリをバックアップまたはアーカイブするようなタスクにとても役立ちます。

たとえば、重要なファイルの日次バックアップを作成するために7zip CLIを使用するBashスクリプトを作成することができます。

#!/bin/bash

## バックアップディレクトリを設定
BACKUP_DIR="/path/to/backup"

## バックアップアーカイブを作成
7z a -mx=9 "$BACKUP_DIR/backup_$(date +%Y%m%d).7z" ~/documents/ ~/photos/

このスクリプトは、毎日新しい7zipアーカイブを作成し、その名前には現在の日付を使用し、documentsphotosディレクトリの内容を含めます。

クロスプラットフォーム互換性

7zipの主な利点の1つは、クロスプラットフォーム互換性です。7zip CLIは、Linux、Windows、macOSを含むさまざまなオペレーティングシステムで使用できます。これは、異なる環境間でファイルとアーカイブを管理するための貴重なツールになっています。

たとえば、Linuxマシン上で7zip CLIを使用してアーカイブを作成し、そのアーカイブをWindowsまたはmacOSシステムに転送し、同じ7zipコマンドを使用してその内容を抽出することができます。

高度なファイル管理

基本的な圧縮と抽出に加えて、7zip CLIには幅広い高度なファイル管理機能も備えています。たとえば、7z lコマンドを使用してアーカイブの内容を一覧表示し、7z tコマンドを使用してアーカイブの整合性をテストすることができます。

また、7zip CLIを使用して、既存のアーカイブにファイルを追加または削除するような、より複雑な操作を行ったり、さまざまなアーカイブ形式間で変換することもできます(たとえば、ZIPアーカイブを7zipアーカイブに変換する)。

これらの高度な7zip CLI技術を身につけることで、ファイル管理のワークフローを効率化し、この強力なツールの本当のプロユーザーになることができます。

まとめ

この包括的なチュートリアルでは、Ubuntu 22.04で7zip CLIを使い始める方法を学びました。その内容は、インストールプロセスと、7zipアーカイブの作成、抽出、管理の基本コマンドをカバーしています。さらに、高度な7zip CLI技術についても探求し、Linuxシステム上でこの強力なツールを活用して効率的なファイル圧縮と管理を行うための知識を身につけました。