Re: [批次] 解壓縮到原有檔案目錄
修正: WinRAR 可以直接指定解壓縮位置,do 的內容就不用兩行
新增: -INUL 略過錯誤訊息,這樣 WinRAR 就不會因為錯誤訊息停止
-ILOG 輸出錯誤訊息,以 append 方式寫入,不會被重複覆寫只留下最後錯誤
^^^^^ (須購買正式版本才有)
rar 指令/開關可以放到 set 變數中
@echo off
set rar="D:\Winrar\Winrar.exe" x -INUL -ILOGD:\ErrLog.txt -ibck -o+ -p2119
for /R %%I in (*.rar) do %rar% "%%I" "%%~dpI"
pause
PS: 不確定是否有必要再加上雙引號 "" 來避免檔案及路徑的空格問題,請斟酌測試
Win 版本比較好 (記得遇過檔名問題,但可能早已修正了)
ibck --> run in background
※ 引述《iamgodisme (miles)》之銘言:
: 最近小弟在備幫家人分硬碟中資料
: 因為資檔案量有點大 所以打算一次壓縮跑完
: 但是目前小弟只能寫到 讓一個目錄底下的全部rar檔解壓縮
: 沒辦法在讓他自動往下繼續做 並且解壓縮到同個資料夾
: 簡單來說就是解壓縮檔案到原本檔案的目錄下就好
: 剛剛改良了一下 可以做到讓目錄下(包含子目錄內)的全部rar檔解壓縮到
: 當前執行.bat位置 但是這不我需要的
: 舉例說明:A(B(b.rar)C(c.rar D(d.rar)))理想是變成A(B(b)C(c D(d)))
: 就解壓到原本的目錄下就好 我改良後的變成A(b c d B C(D))全部都跑到A層了..
: ----------------------------------------------------
: @echo off
: set rar="D:\Winrar\Rar.exe"
: for /R %%f in (*.rar) do %rar% x -o+ -p2119 %%f
: pause
: -----------------------------------------------------
: 以上是我的程式碼
: 希望有大大可以解惑 小弟感激不盡!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.171.163.24
※ 文章網址: https://www.ptt.cc/bbs/EzHotKey/M.1438708743.A.18B.html
※ 編輯: logs (118.171.163.24), 08/05/2015 01:28:04
推
08/05 01:57, , 1F
08/05 01:57, 1F
→
08/05 01:57, , 2F
08/05 01:57, 2F
已修改,再看看有無問題
原先的方式沒有應對到一個目錄會有多個 rar 變成重複解壓縮
→
08/05 01:58, , 3F
08/05 01:58, 3F
推
08/05 02:01, , 4F
08/05 02:01, 4F
推
08/05 02:05, , 5F
08/05 02:05, 5F
用 -INUL switch 避免停住
→
08/05 02:05, , 6F
08/05 02:05, 6F
→
08/05 02:06, , 7F
08/05 02:06, 7F
→
08/05 02:08, , 8F
08/05 02:08, 8F
推
08/05 02:20, , 9F
08/05 02:20, 9F
→
08/05 02:21, , 10F
08/05 02:21, 10F
※ 編輯: logs (118.171.163.24), 08/05/2015 03:28:43
※ 編輯: logs (118.171.163.24), 08/05/2015 03:48:57
推
08/05 04:31, , 11F
08/05 04:31, 11F
討論串 (同標題文章)