返回列表 上一主題 發帖

[請問] 批次檔的執行問題

[請問] 批次檔的執行問題

我的系統是WIN7 X64

測試一個指令 for /d %d in ( D:\TEST\LHT-20181229* ) do rmdir /s /q "%d"
因為*可能包含中文或是空格,所以最後面 %d 改成 "%d"
打開CMD視窗直接貼上指令,正確執行,目標的檔案夾可以全部刪除

把這個指令貼到 RUN.BAT 內做成批次檔(檔案內沒有其他多餘文字),並且把批次檔放在 D:\TEST\ 位置執行,
CMD視窗閃一下關閉,要刪除的檔案夾並沒有被刪除

請問批次檔為什麼執行無效?是否需要增加其他指令輔助?
~熊貓界第一美男子~

自問自答  GOOGLE爬文找到原因了

CMD模式下,變數 只能用一個 %
for /d %d in ( D:\TEST\LHT-20181229* ) do rmdir /s /q "%d"

批次檔模式下,變數需要用二個 %
for /d %%d in ( D:\TEST\LHT-20181229* ) do rmdir /s /q "%%d"
~熊貓界第一美男子~

TOP

        靜思自在 : 【生命在呼吸間】佛陀說:「生命在呼吸間。」人無法管住自己的生命,更無法擋住死期,讓自己永住人間。既然生命去來這麼無常,我們更應該好好地愛惜它、利用它、充實它,讓這無常、寶貴的生命,散發它真善美的光輝,映照出生命真正的價值。
返回列表 上一主題