小弟我想要設定一個自動排程每小時自動從A資料夾搬運到掛載網路磁碟區的B資料夾
原本打算做成BAT檔然後設定工作排成器每小時執行
語法如下
set source_folder=D:\A
set destination_folder=\192.168.100.25\網路磁碟\B資料夾
copy "%source_folder%*.txt" "%destination_folder%"
網路磁碟已掛載好了,直接複製到CMD上也可以執行
但只要存成bat檔,就無法運行了?
請問這是什麼原因呢
我的程式如下:
set source_folder=D:\users\knvbhk
set destination_folder=\\server\folder
copy %source_folder%\*.txt %destination_folder%
使用中 要注意編碼問題
最好的方式 把名稱都改成英文的
只不過 你不需要存LOG來看紀錄嗎?
只單單 異動OR定時 複製的話 滿多免費軟體都有這功能
@echo off
set source_folder=D:\02\
set destination_folder=\\192.168.200.14\Tools
copy "%source_folder%*.txt" "%destination_folder%"
中文問題加一行 chcp 65001
@echo off
chcp 65001
set source_f................
你的 bat 檔存檔時的文字編碼是哪一種?CMD 在 Windows 中文版中預設採用 Big5, 以記事本來說, 就是 ANSI。如果是其它程式碼編輯器, 大部分預設都會採用 UTF-8, 如果是 UTF-8, 就要在你的 bat 檔中開頭加上 chcp 65001
讓 CMD 切換成採用 UTF-8 編碼, 否則它會看不懂檔案中的中文字。但也要記得在 bat 檔結尾處加上 chcp 950
切換回 Big5 編碼, 避免其它指令執行處理中文出問題。
另外, 你的程式中這一行
set destination_folder=\192.168.100.25\網路磁碟\B資料夾
是不是少了一個 \
set destination_folder=\\192.168.100.25\網路磁碟\B資料夾