2016-09-22 9 views
0

を抽出するために、永遠に取ります7zipをこのように、7zipをを使用して、フォルダのセットを圧縮

def list = ["dir1", "dir2", "dir3"] 
        for (int i = 0; i < list.size(); i++) { 
        def dir = list.get(i); 
         bat "7z a %cd%\\artifacts\\${dir}.zip %cd%\\src\\${dir}\\obj\\*" 
         } 

は、共有ドライブにジッパーの上にコピーして、リモートで使用してそれらを抽出します。

def list_a = ["dir1", "dir2", "dir3"] 
       for (int i = 0; i < list_a.size(); i++) { 
       def dir = list_a.get(i); 
        bat "copy %cd%\\artifacts\\${dir}.zip \\\\shared_drive\" 
        bat "7z x \\\\shared_drive\\\${dir}.zip -o\\\\shared_drive\\\${dir} -y" //This step with extraction, takes a very long time for folders with a lot of files in it (as compared using the GUI (right click and extract on the folder) 
        bat "del /Q \\\\shared_drive\\\${dir}.zip" 
       } 

私は抽出中にフォルダ構造を保持します。

マウスでグラフィカルインターフェイスを使用している間に得られる速度に抽出プロセスを固定する方法はありますか?

+0

http://superuser.com/questions/131899/how-to-make-7-zip-faster fredricksの回答を見る –

答えて

0

CLIとGUIの違いはありません。しかし、あなたの設定に共通の落とし穴が1つあります:ネットワークから同じネットワークドライブにアーカイブを展開すると、非常に遅くなる可能性があります

アーカイブを共有にコピーする中間段階を完全に避ける方がよいでしょう。

def list_a = ["dir1", "dir2", "dir3"] 
       for (int i = 0; i < list_a.size(); i++) { 
       def dir = list_a.get(i); 
        bat "7z x %cd%\\artifacts\\${dir}.zip -o\\\\shared_drive\\\${dir} -y" //This step with extraction, takes a very long time for folders with a lot of files in it (as compared using the GUI (right click and extract on the folder) 
       } 

そうでない場合、それは最初にローカルドライブにアーカイブをコピーする価値があるかもしれ、それを抽出します。%cd%はあなたのセットアップでローカルドライブがある場合、これは行います。

関連する問題