標籤:
利用windows系統ftp命令編寫的BAT檔案上傳[轉] 利用windows系統ftp命令編寫的BAT檔案上傳[轉]
在開發中往往需要將本地的程式上傳到伺服器,而且用慣了linux命令的人來說。在windows下就比較麻煩了。為了方便特編寫一個BAT程式來協助需要這樣功能的人。如果用其他IDE工具內建的FTP功能也可以,^_^!
命令: todev.bat /index.asp 預設d:\cnweb為網站的根目錄。
我的 http://www.lawcar.cn/ http://www.myitcar.com/ http://www.stockcar.cn/ http://www.lunwencar.com/ 都是靠這樣的方法維護。
@IF "%1"=="" goto error_parm
@IF "%2"=="" goto error_parm
@SETLOCAL
@set server=192.168.10.199
@set username=
@set password=
@echo 是否上傳 d:\cnweb\%1\%2 到dev伺服器!
@echo off
CHOICE /C YN /M "確認請按 Y,否請按N退出"
if errorlevel 255 goto no
if errorlevel 2 goto no
if errorlevel 1 goto yes
:no
@echo on
@echo 沒有任何檔案上傳到DEV.
@goto end
:yes
IF not EXIST d:\cnweb\%1\%2 goto error2
echo open %server% > ftp.txt
echo user %username% >> ftp.txt
echo %password% >> ftp.txt
echo cd %1 >> ftp.txt
echo bye>> ftp.txt
ftp -s:ftp.txt -n | find "550"
if not errorlevel 1 @goto error
rem del ftp.txt ftperror.txt
echo open %server% > ftp.txt
echo user %username% >> ftp.txt
echo %password% >> ftp.txt
echo cd %1 >> ftp.txt
echo put d:\cnweb\%1\%2 >> ftp.txt
echo bye>> ftp.txt
ftp -s:ftp.txt -n | find "Invalid"
if not errorlevel 1 @goto error3
rem del ftp.txt ftperror.txt
@echo on
@echo 上傳DEV完成.
@goto putok
:error
@echo 伺服器目錄錯誤 %1
rem del ftp.txt ftperror.txt
@goto end
:error2
@echo 本地目錄錯誤 d:\cnweb\%1
@del ftp.txt ftperror.txt
@goto end
:error3
@echo 上傳檔案錯誤 d:\cnweb\%1\%2del ftp.txt ftperror.txt@goto end:putok@echo 上傳成功 %1 %2 !@rem del ftp.txt ftperror.txt@goto end:error_parm@echo 參數錯誤,正確格式: todev 相對路徑 檔案名稱@goto end:end@echo Bye.@ENDLOCAL
利用windows系統ftp命令編寫的BAT檔案上傳[轉]