web-dev-qa-db-ja.com

Linuxサーバー上の大きな(30Gb +)Zipファイルからファイルを抽出する方法

1)大きなZipファイルから抽出

Linuxサーバー上の大きなZipファイル(30Gb +)からファイルを抽出したい。十分な空きディスク容量があります。

_jar xf dataset.Zip_を試しました。ただし、_Push button is full_というエラーがあり、すべてのファイルを抽出できませんでした。

unzipを試しましたが、zipファイルが壊れています。

_Archive:  dataset.Zip 
warning [dataset.Zip]:  35141564204 extra bytes at beginning or within zipfile
(attempting to process anyway)
error [dataset.Zip]:  start of central directory not found;
zipfile corrupt.
 (please check that you have transferred or created the zipfile in the
appropriate BINARY mode and that you have compiled UnZip properly)
_

_Zip -FF dataset.Zip --out data.Zip_を試しましたが、エントリが大きすぎるというエラーがあります。

Zip error: Entry too big to split, read, or write (Poor compression resulted in unexpectedly large entry - try -fz)

とにかく、本当に大きなZipファイルからファイルを効率的に抽出できますか?

2)大きなZipファイルから特定のファイルを抽出します

この大きなZipファイルから特定のファイルのみが必要な場合、とにかくこれらのファイルのみを抽出できますか?たとえば、dataset.zipのdata1.txt? Zipまたはunzipコマンドを使用できないようです(常にzipfileの破損の問題があります)。

ありがとう!

9
Irene W.

私は問題を解決しました。 Zipの破損の問題であることが判明しました。私は最初にファイルを次のように修正しました:

Zip -FF filename1.Zip --out filename2.Zip -fz

次に、固定zipファイルを解凍します。

unzip filename2.Zip

そして、すべてのファイルを正常に抽出しました!

Fattaneh Talebiの助けに感謝します!

15
Irene W.

zipから特定のファイルを抽出できます

$ unzip -j "zipedfile.Zip" "file.txt"

file.txtは、zipedfile.Zipから抽出するファイルです。

6
Fattaneh Talebi

ディレクトリを抽出して制御を維持し、中断した場所を確認してください。例:tar tv --wildcards -f siteRF.tar './ Movies/*'

1
jobeard

上記のすべての手順を実行してファイルを解凍しようとしましたが、惨めに失敗しました。

私の最後の手段は、Zipファイル(11.1GB)をハードドライブにコピーし、Windows 8OSで7Zipを使用して解凍することでした。

チャームのように働いた:D

0
Vinu Joseph

私も同様の問題を抱えていましたが、unarコマンドで解決しました。

unar file.Zip

0
Usman