本應(yīng)用程序設(shè)計的幾個基本理念是:
工具箱再利用:盡可能利用已有的工具;
簡化運行步驟;不引入過多的業(yè)務(wù)邏輯,滿足的需求越簡單越好。
所以,我們定義了本應(yīng)用程序依賴于以下幾個工具的運行:
ActivePerl-5.8.4.810-MSWin32-x86
Upload.pl
Upload.config
我們將主要的執(zhí)行邏輯都放在Perl源文件Upload.pl中了,配置文件為Upload.config。
這個perl文件將執(zhí)行的任務(wù)是, 按照指定的文件夾目錄,自動將該文件夾下的所有文件上傳到指定ftp站點的指定目錄下。
這個Perl腳本實際是從Uwe Keim 的《Perl Script for uploading modified files to a FTP-Server》繼承下來的,
只不過增加了容錯反應(yīng)和讀取外部配置文件的部分,刨掉了與一般業(yè)務(wù)邏輯無關(guān)的讀寫access文件的部分。
程序大致的流程:
第一步,嘗試登陸ftp站點;
第二步,在指定文件夾A類下尋找符合條件的文件,并將A類文件上傳到FTP站點指定目錄下;
第三步,如果A類文件們?nèi)可蟼鞒晒Γ敲丛谥付ㄎ募AB類下尋找指定文件, 并且上傳到FTP指定目錄下
第四步,寫成功/失敗日志。
最后,要寫的成功/失敗日志的格式如下:
成功: 生成一個名為“Upload_Succ_2005_01_04_17_23.log”的日志文件
文件格式:輸出上傳時間,以及所有上傳文件名及其大小和耗費的時間。
失敗: 生成一個名為“Upload_Fail_2005_01_04_17_23.log”的日志文件
文件格式:輸出上傳時間,以及已經(jīng)上傳的文件名及其大小和耗費的時間,和失敗的文件名及原因。
配置perl腳本運行有兩個辦法:
您可以在Windows計劃任務(wù)中配置運行“Perl Upload.pl”的時間,這需要在Windows環(huán)境中配置ActivePerl 5.8.4.810;
您也可以利用Perl2Exe(p2x-8.40-Win32)來將perl腳本編譯為一個exe可執(zhí)行程序,在計劃任務(wù)中運行這個exe(這需要PerlCRT.dll在系統(tǒng)路徑下)。
[注意!]在運行之前,您必須修改“Upload.config”文件以配置所需的重要參數(shù)。
外部配置參數(shù)
在和perl腳本同一目錄下的“Upload.config”配置文件中,是事先配置的六個外部參數(shù):
參數(shù)1: ftp_server:
FTP服務(wù)器的IP地址。
參數(shù)2: ftp_dir:
指定的FTP上傳目錄路徑;
參數(shù)3: ftp_uid:
FTP的登陸用戶名;
參數(shù)4: ftp_pw:
FTP的登陸密碼;
參數(shù)5: src_dir_WAVFiles,這是一個數(shù)組:
指定A類文件夾,放置所有要上傳的語音文件;
注意:這個目錄下的子文件夾也會被上傳。
參數(shù)6: src_dir_NamesListFile,這是一個數(shù)組:
指定B類文件夾,放置B類文件.
注意:這個目錄下的子文件夾也會被上傳。
附錄:
Upoad.pl內(nèi)容:
代碼如下:
#!/usr/bin/perl -w
##--------------------------------
#
# 工程項目: FTP自動上傳兩類文件
新聞熱點
疑難解答