摘要:BAT - 批次檔使用心得 (四)
這段時間將自己所寫的批次檔稍微的整理了一下,讓這小東西更為貼近我的需求。因為之前的寫法很差,必須要更改資料夾的檔名方可把我要的DLL複製過來,所以在這次的修改下,可依據日期來自動產生新的資料夾,這樣就可以滿足一個懶人的需求啦...
Code:
::取得年月日,格式:YYYYMMDD
FOR /F "TOKENS=1-3 DELIMS=/ " %%A IN ("%DATE%") DO (SET SYSDATE=%%A%%B%%C)
::取得批次檔所在的路徑
SET V_BATPATH=%~DP0%
::資料夾名稱,格式 SYSTEM UPDATE YYYYMMDD
SET V_FILENAME=SYSTEM UPDATE %SYSDATE%
::資料夾路徑
SET V_FILENAME_PATH=%V_BATPATH%%V_FILENAME%
::子資料夾路徑:SERVICES
SET V_DESTINATION_SERVICE="%V_FILENAME_PATH%\SERVICES\"
::子資料夾路徑:UI
SET V_DESTINATION_UI="%V_FILENAME_PATH%\UI\"
::若資料夾與子資料夾不存在則建立之
IF NOT EXIST %V_FILENAME_PATH% (
MD "%V_FILENAME_PATH%"
MD %V_DESTINATION_SERVICE%
MD %V_DESTINATION_UI%
)
::刪除指定資料夾中所有的資料
DEL /Q %V_DESTINATION_SERVICE%*.*
DEL /Q %V_DESTINATION_UI%*.*
::將專案中的 DLL 複製到指定的資料夾中
COPY /Y C:\...\*.DLL %V_DESTINATION_SERVICE%
COPY /Y C:\...\*.DLL %V_DESTINATION_UI%
...
參考:
如何判斷目錄是否為空?
批處理判斷文件夾是否存在
取得Batch file所在目錄路徑