アーカイブ内の.zipを解凍せずにアーカイブ内の特定のファイルの内容を読み取るにはどうすればよいですか?Linuxコマンドラインを使用しています。
以前の質問では、アーカイブのディレクトリの表示について尋ねられます。しかし、私にとっては、アーカイブ内のファイルのリストを表示するだけでは不十分です。アーカイブ内のファイルの内容を表示する必要があります。
アーカイブ内の.zipを解凍せずにアーカイブ内の特定のファイルの内容を読み取るにはどうすればよいですか?Linuxコマンドラインを使用しています。
以前の質問では、アーカイブのディレクトリの表示について尋ねられます。しかし、私にとっては、アーカイブ内のファイルのリストを表示するだけでは不十分です。アーカイブ内のファイルの内容を表示する必要があります。
回答:
unzip -l archive.zip
ZIPアーカイブの内容をリストして、ファイルが内部にあることを確認します。
-c
オプションを使用して、アーカイブ全体を解凍することなく、名前付きファイルの内容をstdout(画面)に書き込みます。
unzip -c archive.zip file1.txt file2.txt | less
この種の操作では、出力を常ににパイプしますless
。そうしないと、ファイル全体が画面上を飛んでから読み上げられます。
BTW zcatは、.gzファイルの内容を最初に圧縮解除することなく表示するのに最適です。
less archive.zip
実際にはファイルのリストが表示されます。
$LESSOPEN
lesspipeに設定し、あなただけのことができますless foo.gz
解凍の内容を表示します。(@aviv:これは自分自身less foo.zip
にパイプできるようにするものと同じですunzip -l foo.zip
)。
unzip -c archive.zip '*' | less
私が探していたものを行います:zipアーカイブのコンテンツを猫します。
Emacs
コマンドラインで起動し、zipファイルをZip-Archive
モードで開きます。Emacs / elispのチューニングがなければ(新しいユーザーは一般的に心配しています)、zipinfo
モード、長さ、日付、時刻などのファイルの詳細が表示されます。
次に、標準のショートカットを使用して、バッファ内のファイルを開き、変更をアーカイブに保存することもできます。
Ctrl-x Ctrl-s
Ctrl-k
を強制終了してアーカイブバッファに戻って続行するときにZip-Archive
、バッファ、使用Ctrl-h m
のヘルプビューで使用可能なすべてのショートカットを取得します。
これがEmacsの素晴らしい機能を発見するのにつながることを願っています
less archive.zip
これを行う最も簡単な方法であることがわかりました。
ファイルがzipアーカイブに含まれている場合、そのファイルのみをアーカイブから抽出する必要があります(アーカイブの種類によって異なる場合があり、一部のアーカイブではファイルを個別に抽出できません)