Linux で圧縮ファイルの内容を表示する 10 の方法 (要約)

Linux で圧縮ファイルの内容を表示する 10 の方法 (要約)

一般的に、アーカイブされたファイルや圧縮されたファイルの内容を表示するには、まず解凍してから表示する必要があり、これはかなり面倒です。今日は、アーカイブされたファイルや圧縮されたファイルを解凍せずにその内容を簡単に表示できる 10 種類の方法を紹介します。

技術的には、アーカイブされたファイルや圧縮されたファイルを解凍せずに表示することは不可能です。この記事で説明する方法では、これらの圧縮ファイルはバックグラウンドで一時ディレクトリ /tmp に解凍されます。システムを再起動すると、/tmp ディレクトリの内容がクリアされます。

先に進む前に、アーカイブ ファイルと圧縮ファイルについて説明します。

  • アーカイブとは、複数のファイルまたはフォルダーを 1 つのファイルに結合するプロセスです。この場合、結果のファイルは圧縮されません。
  • 圧縮とは、複数のファイルまたはフォルダーを 1 つのファイルに結合し、結果のファイルを圧縮するプロセスです。

アーカイブ ファイルは圧縮ファイルではありませんが、圧縮ファイルはアーカイブ ファイルになることができます。これら 2 つの概念を理解した後、圧縮ファイルを解凍せずにその内容を表示する方法を正式に紹介します。

1. Vimエディタの使用

Vim は単なるエディターではなく、他の多くの強力な機能も備えています。次のコマンドは、圧縮されたアーカイブ ファイルの内容を直接表示します。

$ vim test.tar.gzコードをコピー

" tar.vim バージョン v29
" tarfile /home/alvin/test.tar.gz を参照しています
「カーソルでファイルを選択し、ENTERを押します

テスト/画像.jpg
テスト/ファイル.pdf
テスト/歌.mp3
テスト/

それだけでなく、Vim を使用すると、アーカイブファイルを直接参照することもできます。テキストファイルがある場合は、直接開くことができるので、非常に便利です。

テキスト ファイルを開く必要がある場合は、矢印キーを使用してカーソルをファイルの先頭に移動し、ENTER キーを押して開きます。

2. tarコマンドの使用

tar コマンドは、ファイルの圧縮/解凍に使用できるだけでなく、tar -tf コマンドを使用して、tar ファイルを解凍せずに圧縮パッケージの内容を表示することもできます。

$ tar -tf テスト.tar
テスト/
テスト/画像.jpg
テスト/ファイル.pdf
テスト/歌.mp3

または、-v オプションを使用して、権限、ファイル所有者、グループ、作成日などのアーカイブ ファイルの詳細なプロパティを表示します。

$ tar -tvf テスト.tar
drwxr-xr-x alvin/ユーザー 0 2019-07-02 19:30 テスト/
-rw-r--r-- アルビン/ユーザー 53632 2019-06-29 15:57 テスト/イメージ.jpg
-rw-r--r-- alvin/users 156831 2019-06-04 12:37 test/file.pdf
-rw-r--r-- アルビン/ユーザー 9702219 2019-04-25 20:35 テスト/song.mp3

3. rarコマンドを使用する

同様に、rar v コマンドを使用すると、rar ファイルを解凍せずに圧縮ファイルの内容を表示できます。

$ rar v test.rar
RAR 5.60 著作権 (c) 1993-2019 Alexander Roshal 2019年6月24日
試用版 ヘルプを表示するには「rar -?」と入力してください

アーカイブ: test.rar
詳細: RAR 5

属性 サイズ パック比率 日付 時刻 チェックサム 名前
----------- --------- -------- ----- --------- ----- -------- ----
-rw-r--r-- 53632 52166 97% 2019-06-29 15:57 70260AC4 test/image.jpg
-rw-r--r-- 156831 139094 88% 2019-06-04 12:37 C66C545E テスト/ファイル.pdf
-rw-r--r-- 9702219 9658527 99% 2019-04-25 20:35 DD875AC4 テスト/歌.mp3
----------- --------- -------- ----- --------- ----- -------- ----
9912682 9849787 99% 3

4. unrarコマンドを使用する

上記の rar ファイルの場合、l パラメータを指定した unrar コマンドを使用して、rar ファイルの内容を表示することもできます。

$ unrar l test.rar
UNRAR 5.60 フリーウェア Copyright (c) 1993-2019 Alexander Roshal

アーカイブ: test.rar
詳細: RAR 5

属性 サイズ 日付 時間 名前
----------- --------- --------- ----- ---- ----
-rw-r--r-- 53632 2019-06-29 15:57 test/image.jpg
-rw-r--r-- 156831 2019-06-04 12:37 テスト/ファイル.pdf
-rw-r--r-- 9702219 2019-04-25 20:35 テスト/歌.mp3
----------- --------- --------- ----- ---- ----
9912682 3

5. zipコマンドを使用する

zip -sf コマンドを使用すると、zip ファイルを解凍せずにその内容を表示できます。

$ zip -sf テスト.zip
アーカイブには以下が含まれます:
人生のアドバイス.jpg
合計 1 エントリ (597219 バイト)

6. unzipコマンドを使用する

unrar と同様に、-l パラメータを指定した unzip コマンドを使用して、zip ファイルの内容を表示します。

$ 解凍 -l test.zip
アーカイブ: test.zip
長さ 日付 時間 名前
--------- ---------- ----- ----
597219 2019-04-09 12:48 人生のアドバイス.jpg
--------- -------
597219 1 ファイル

7. zipinfoコマンドを使用する

zip ファイルの内容を表示するには、zipinfo コマンドを使用することもできます。

$ zipinfo テスト.zip
アーカイブ: test.zip
Zip ファイルのサイズ: 584859 バイト、エントリ数: 1
-rw-r--r-- 6.3 unx 597219 bx defN 2009年4月18日 12:48 人生のアドバイス.jpg
1 ファイル、非圧縮 597219 バイト、圧縮 584693 バイト: 2.1%

8. zcat コマンドの使用

アーカイブ/圧縮されたファイルを表示するには、zcat コマンドを使用します。

$ zcat テスト.tar.gz

zcat は gunzip -c コマンドと同じ機能を持ちます。したがって、次のコマンドも使用できます。

$ gunzip -c test.tar.gz

9. zlessコマンドを使用する

アーカイブされたファイルや圧縮されたファイルを表示するには、zless コマンドを使用します。

$ zless テスト.tar.gz

zless は less に似ていますが、コンテンツをページごとに表示する点が異なります。

10. lessコマンドを使用する

ファイルの内容を対話形式で表示できる less コマンドは、誰もがご存知でしょう。それだけでなく、アーカイブ/圧縮されたファイルの内容を表示するためにも使用できます。

$ 少ない test.tar.gz

まとめ

上記では、アーカイブ/圧縮されたファイルの内容を展開せずに表示できる 10 種類のコマンドを簡単に紹介しました。これらのコマンドのいくつかに興味がある場合は、自分でゆっくりと学習することができます。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Linux の gzip コマンド
  • Linux でのデータ圧縮のいくつかの方法と表示方法 (サンプル コード)
  • 圧縮パッケージを使用して Linux 環境に JDK 13 をインストールする方法
  • Linux xz 圧縮および解凍方法の概要
  • 圧縮を使用して Windows の zip 圧縮パッケージを Linux システムにアップロードする方法の分析
  • Linux での zip 圧縮および unzip 解凍コマンドとその使用法の詳細な説明
  • Linuxでフォルダを圧縮する方法
  • Linux gzip コマンドのファイル圧縮実装原理とコード例

<<:  MySQLの基本操作を詳しく解説(第2部)

>>:  JavaScriptコールバック関数の詳細な理解

推薦する

Node.js でのクラスター作成に関する簡単な説明

目次クラスタクラスターの詳細クラスター内のイベントクラスター内のメソッドクラスター内の属性クラスター...

MySQL データベースのインストールと Navicat for MySQL の使用に関するチュートリアル

MySQL は、スウェーデンの会社 MySQL AB によって開発され、現在は Oracle が所有...

Nginx フォワードプロキシとリバースプロキシの違いと原理分析

1. フォワードプロキシとリバースプロキシの違いフォワード プロキシはクライアントのプロキシとして機...

MySQLインデックスが失敗するいくつかの状況の分析

1. 最左プレフィックス原則 - 複数の列にインデックスが付けられている場合は、最左プレフィックス原...

Raspberry PiにDockerをインストールする方法

Raspberry Pi は ARM アーキテクチャをベースとしているため、Docker のインスト...

jsを使用して写真をアップロードする機能を実現する

フロントエンドで画像をアップロードする原理は、入力 type="file" タグ...

HTML のオートコンプリートを無効にして履歴を表示しないようにする

入力ボックスには、コンテンツを入力するときに常に入力履歴が表示されます。これを無効にする現在の方法は...

Nginx プロキシを使用してインターネットを閲覧する方法

私は通常、Tomcatや他のアプリケーションのリバースプロキシとしてnginxを使用しています。実際...

CSSはコンテンツの高さが足りない場合にフッターを自動的に下部に固定します

UI カットのプロセスでは、ページはヘッダー、コンテンツ、フッターの 3 つの部分で構成されることが...

オンラインMySQLオプティマイザの誤判断によって発生した低速クエリイベントを記録する

序文:非常に遅いクエリとリクエストのタイムアウトのアラートを受け取りました。メトリックを通じて My...

Reactは二次的連鎖効果(階段効果)を実現する

この記事では、二次リンク効果を実現するためのReactの具体的なコードを参考までに共有します。具体的...

MySQLデータベース入門:マルチインスタンス構成方法の詳しい説明

目次1. マルチインスタンスとは2. 複数インスタンスのインストールの準備3. MYSQLの複数イン...

Vue 父子価値移転、兄弟価値移転、子父価値移転の詳細な説明

目次1. 親コンポーネントが子コンポーネントに値を渡す1. 親コンポーネント.vue 2. サブコン...

MySQL 5.7 生成列の使用例の分析

この記事では、例を使用して、MySQL 5.7 で生成された列の使用方法を説明します。ご参考までに、...

Vue3 でサードパーティのコンポーネントライブラリをオンデマンドでロードする方法

序文Element Plus を例に、コンポーネントとスタイルのオンデマンド読み込みを構成します。環...