網頁

2016年10月21日 星期五

利用 WinSCP 與工作排程自動更新本地端檔案到遠方主機

主要參考文件
  • 直接下載 portable 版本的  WinSCP 並解壓縮。
  • 在解壓縮目錄內新增 script 目錄,將所有自已撰寫的部份全部集中到這個目錄內。
  • 新增 update.bat
update.bat 範例內容如下:
@echo on
"C:\WinSCPPortable\App\WinSCP\WinSCP.exe" /log="C:\WinSCPPortable\script\log\WinSCPE.log" /ini=nul /script="C:\WinSCPPortable\script\update.txt"

  • 新增 update.txt
先藉由 WinSCP 所提供的工具(Generate Session URL/Code/Transfer Code Dialog),先產出基本的 script。將此 script 複製到 update.txt內。再配合 get put 指令即可(更詳細的傳輸指令可參考這頁)。因為連線的帳密是明碼,在WinSCP 文件內也有提供一些指導文件

範例內容如下:
option batch abort
option confirm off

# 由WinSCP 工具直接產出腳本
open sftp://account:password -hostkey="......xxxxxxxx ......"

#將本地端的mp3 檔案上傳到主機上的 htdocs 目錄內
put C:\Temp\FTP_Data\*.MP3 /var/htdocs/

# 將遠端主機的 htdocs 目錄複製一份到本地端的電腦
get  /var/htdocs/ C:/Temp\FTP_Data\htdocs\

exit
  • 於作業系統內設定工作排程,定時執行 update.bat 這支檔案即可
  • Other Note
    • 以上範例是採用 SFTP 的機制。 WinSCP 也支援 FTPS的作法,FTPS 的實作可參考此篇
    • 若要同步主機端與 Client 端的作法,可參考 "DOS Batch File to Synchronize"



沒有留言:

張貼留言