2013年5月14日 星期二

利用批次檔(*.bat)自動下載FTP上的檔案

首先寫一個ftp的執行腳本 (ftp.txt)

open ftp.sample.com.tw
user 帳號名稱
密碼
binary                                   //以二進位模式下載
prompt off                            //關閉互動模式
cd /destination-on-ftp           //目標檔案所在目錄
lcd /destination-on-pc          //預計下載儲存的目錄
get 檔名                               //下載單一檔案
mget *.*                               //多重下載
bye                                      //結束連線


再來寫一個批次檔(backup.bat),來執行ftp下載動作

@echo off
REM 設定環境變數
set BASE:
set DOWNLOAD_PATH= 下載目錄位置          //如ftp.txt已有指定,這個就不需要了
set LOG_PATH= log檔存放位置
set LOG_FILE=log檔的檔名

REM 判斷目錄是否存在
 %BASE%
if not exist %DOWNLOAD_PATH%(
mkdir %DOWNLOAD_PATH%
)
if not exist %LOG_PATH%(
mkdir %LOG_PATH
)

REM 開始執行
set DATET=%date%%time%
echo 開始時間: %DATET% >> %LOG_FILE%
cd %DOWNLOAD_PATH%
ftp -n -s:ftp.txt >> %LOG_FILE%
echo 結束時間: %DATET% >> %LOG_FILE%

沒有留言: