[批次] 解壓縮到原有檔案目錄

作者: iamgodisme (miles)   2015-08-03 17:50:48
最近小弟在備幫家人分硬碟中資料
因為資檔案量有點大 所以打算一次壓縮跑完
但是目前小弟只能寫到 讓一個目錄底下的全部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層了..
作者: logs ( )   2015-08-04 22:53:00
看不太懂你的括弧代表什麼意思?有待其他高手出招誠心建議要弄複雜的備份方案,還是用專門的程式例如 Cobian Backup http://www.cobiansoft.com/index.htm不過我覺得你的疑問應該是 rar cmd line 的用法在壓縮的時候,要使用 -ep2 甚至 -ep3 來包含完整路徑想了一下,發現你可能需要加上 cd (change dir)先 cd 再 rar x
作者: iamgodisme (miles)   2015-08-04 23:53:00
感謝樓上大大回復 刮弧的意思是目錄A()=A目錄下A(B(b.rar))代表 A目錄下有B目錄 B目錄內有b.rar檔用CD的方式有想過 但是假如有100層就要CD 100行..所以想說有沒有配合演算法可以寫樹狀往下解壓縮的方法
作者: logs ( )   2015-08-05 00:52:00
for /r 就是遞迴(Recursive)的意思 你需要解析路徑來 cd或許可以用 for 的 token 或 % 操作子(搭配延伸指令)但是太複雜,不如用簡便的 script 來完成:AHK、AutoIt、按精甚至 PowerShell、VBscript 都是不錯的方案
作者: iamgodisme (miles)   2015-08-05 01:14:00
謝謝大大 我在研究其他方式看看
作者: logs ( )   2015-08-05 01:17:00
用 %~dpI 可解決比想像中簡單^^ 已確認此延伸指令至少 XP 開始就有支援了

Links booklink

Contact Us: admin [ a t ] ucptt.com