アーカイブを解凍せずにファイルを編集するにはどうすればよいですか。理由は、自動化タスクを作成しているためです。解凍、ファイルの編集、およびzipを実行できますが、実行時に実行できると、解凍/圧縮の時間を節約できます。
質問する
5688 次
1 に答える
3
zip
マニュアルページには、-u
zipアーカイブを更新するオプションがあります。あなたはそれを次のように使うことができます:
zip -u bigzip.zip file/to/update1 file/to/update2 ...
瞬時ではありませんが、はるかに高速になります。サンプルの200MBのzipファイルを作成する場合:
mkdir source
for (( f = 0; f < 200; f++ )); do
head -c 1000000 /dev/random > source/${f}
done
zip -0r bigzip.zip source
次に、解凍して1つのファイルを編集し、再解凍するのに私のマシンでは約9秒かかります。
unzip bigzip.zip
head -c 1000000 /dev/random > source/3
zip -0r bigzip.zip source
しかし、呼び出すのに約3秒しかかかりませんzip -u
。
mkdir source
head -c1000000 /dev/random > source/3
zip -u bigzip.zip source/3
于 2012-11-29T21:55:34.060 に答える