設定FTP軟體排程自動上傳下載檔案
身為一個懶惰的IT,通常做事都是能不自己動手就不動 (難怪身材逐漸....),也因此要與其它合作伙伴抓或是傳檔案這種事情,理想狀況就是讓電腦自己去做就好,如此才符合時代的趨勢啊 (鬼扯)。
先說,會選擇FTP這種傳輸方式其實沒有什麼特別考量,要做到自動傳輸其實有很多種解決方式,我純粹只是找一個最簡單方式來設定而已。
工作環境
下載設定方式
我安裝的FTP軟體是WinSCP,會選這套是因為他有支援FTP批此檔案作業 (其它套應該也會有,但我沒多查就是了),安裝完畢後就不用管它了,因為我們只是要利用他的程式去呼叫我們另外要執行的檔案。
事前我們必要要準備好2檔案
- A.BAT <==執行檔,要透過WinSCP去呼叫A.TXT檔案內容執行
- A.TXT <==檔案指令,裡面會設定要連線的FTP帳密跟執行動作
A.BAT的檔案內容如下:
exit
其中要注意的是因為我的是64位元作業系統,所以檔案路徑會是X86,若你是32位元的則不會不一樣,而後面的/script=C:1A.txt,這段從C:開始就看你自己的檔案存放在哪在怎麼改就好。
至於A.TXT的內容是這樣的
option batch abort option confirm off open ftp://登入ftp帳號:登入ftp密碼@ftp連線主機IP cd /download lcd /1 mget *.*
前面三行應該沒有什麼特別要注意的,從第四行開始其實才是重點
- 若你連線的FTP主機有多個資料夾,登入後"可能"要在在選擇資料夾,此時你要注意用CD切換資料夾時要放"空格",不是全部黏在一起打。
- lcd /1的意思是你把檔案下載後要存放在哪裡,/1是代表C:1的資料夾
- mget *.*是代表全部下載,你也可以指定特定副檔名來做
上傳設定方式
整個作法跟下載沒兩樣,只有差在一行指令不同而已
option batch abort option confirm off open ftp://登入ftp帳號:登入ftp密碼@ftp連線主機IP cd /download put C:TEST*.* /1 close
這邊跟下載最大的差異應該就是在倒數第二行,上傳我們用的是put指令,後來一樣是接來源檔案路徑跟目的檔案路徑,最後下close結束連線。
自動排程
前面已經做好辛苦的設定了,接下來就是享受愉快的排程設定了,使用Windows內建的工作排程設定好定時去執行BAT檔案,記得設定完後手動執行看看是否有成功喔。
Window 所有程式 系統工具 工作排程器
以上,提供自己粗淺的做法給有需要的知道,若內容有錯也請在指正 :)
參考資料