我想通過bat腳本來實作自動的解壓和覆寫檔案:
md D:\rar\AuxiliaryService
start winrar x -ibck d:\huangyaoqi\AuxiliaryService.zip D:\rar\AuxiliaryService
xcopy D:\rar\AuxiliaryService D:\test /s /e /h /i /y
就是上面這種形式。
但是,在執行第二行rar解壓還沒有完成,這個腳本就開始向下執行,就執行第三步的復制。
由于解壓沒有完成,拷貝當然是空的。
我找了一些rar命令列的文章,引數實在太多,但也沒有找到有幫助的。
求助各位指點一下,謝謝。
uj5u.com熱心網友回復:
參考這個:http://www.jb51.net/article/79528.htm
uj5u.com熱心網友回復:
我的問題應該不是延時的問題吧。
畢竟,有時候,有的壓縮包還是很大的。設定時間內,不一定能解壓完。
uj5u.com熱心網友回復:
start /wait,運行一個程式,并等待它結束。uj5u.com熱心網友回復:
另外,winrar是帶GUI的程式,不知道對這個有沒有影響,你可以測驗一下。相比winrar.exe,在批處理里更推薦rar.exe,rar的命令列版本。uj5u.com熱心網友回復:
我在第二行命令里加個“/wait”就可以嗎?
明天我試試。
uj5u.com熱心網友回復:
那我可以在命令里直接替換成“rar.exe”嗎?
uj5u.com熱心網友回復:
rar.exe 好像只能 .rar 檔案吧,不能是其它格式的,盡管 winrar 是可以的。批處理是可以用 winrar.exe 的。start 等待的問題,一是可以用上面朋友說的 /wait 引數;其實直接用 winrar.exe 即可,如果其不在 path 設定里,路徑寫全了如 "c:\program files\winrar\winrar.exe" x ....
uj5u.com熱心網友回復:
md D:\rar\AuxiliaryServicestart winrar x /wait d:\huangyaoqi\AuxiliaryService.zip D:\rar\AuxiliaryService
xcopy D:\rar\AuxiliaryService D:\test /s /e /h /i /y
加上/wait引數,結果還是原來那樣子。
現在的問題是,解壓沒有結束,就開始執行第3行的命令。
uj5u.com熱心網友回復:
你 /wait 放錯地方了,這個是給 start 的引數,不是給 winrar 的:start "" /WAIT winrar x ....uj5u.com熱心網友回復:
最大的壓縮包有多大?
uj5u.com熱心網友回復:
最大的壓縮包有70M多一點uj5u.com熱心網友回復:
你 /wait 放錯地方了,這個是給 start 的引數,不是給 winrar 的:start "" /WAIT winrar x ....
OK了,謝謝。
這樣,好像就沒有問題了。
我再測驗一下。
看來,我是不用考慮搞Windows版的jenkins了。
uj5u.com熱心網友回復:
最大的壓縮包有70M多一點
壓縮包內如果不是大量小檔案測驗出來實際解壓時間,然后留有合適的冗余設定延時是可行的
uj5u.com熱心網友回復:
最大的壓縮包有70M多一點
壓縮包內如果不是大量小檔案測驗出來實際解壓時間,然后留有合適的冗余設定延時是可行的
您說的也是,我之前沒有關注過壓縮包平時的大小。最近我會在關注一下。畢竟,這也是解決的思路之一。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/104083.html
標籤:Windows客戶端使用
