iT邦幫忙

0

我又來了...bat檔尋找路徑使用月份問題

  • 分享至 

  • xImage

請教各位導師們bat檔尋找路徑使用月份問題
在D:\333333\目錄下有01~12月份的資料夾
"01月份2023_食材"
"02月份2023_食材"
"03月份2023_食材"
"04月份2023_食材"

要做一個BAT檔,自動依據現在電腦系統上的月份去搜尋相關月份資料夾
然後把當月月份資料夾裡面的*.xlsx複製到d:\111\

例如:
像現在系統是4月份,那得到的完整路徑就是
"D:\333333\04月份2023_食材",然後把裡面的*.xlsx複製到d:\111\

試了好久,一直得不到想要的,請問要怎麼樣才能夠實現?謝謝~~~

@echo off
chcp 65001
setlocal enabledelayedexpansion
set month=%date:~5,2%
set folder_name=%month%月份2023_食材
set path="D:\333333\%folder_name%"
if not exist %path% (
    echo 無法找到指定的資料夾:%path%
    pause
    exit /b 1
)
copy %path%\*.xlsx d:\111
echo 資料複製完成!
pause
exit /b 0

misadm iT邦高手 10 級 ‧ 2023-04-07 08:55:39 檢舉
『PATH』是系統變數,請不要使用
將變數 “path” 的名稱改成其他的 (例如 “data_path") 該就可以了。
kkbox iT邦新手 5 級 ‧ 2023-04-08 14:43:22 檢舉
謝謝己解決,將變數 “path” 的名稱改成其他的 (例如 “data_path") 就可以了。
另外CHCP65001 要移除並另存成ANSI才能尋找中文路徑
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

0
wiseguy
iT邦超人 1 級 ‧ 2023-04-06 23:05:30

你的第4行應該改為
set month=%date:~8,2%
並且記得把 bat 檔存為 UTF-8 格式

系統的 date 格式若是 “yyyy/mm/hh",則 %date:~5,2% 用法是對的。

kkbox iT邦新手 5 級 ‧ 2023-04-08 14:34:12 檢舉

謝謝己解決,將變數 “path” 的名稱改成其他的 (例如 “data_path") 就可以了。
另外CHCP65001 要移除並另存成ANSI才能尋找中文路徑

我要發表回答

立即登入回答