@echo off
rem 2017-04-10
rem by geln
rem 演示ftp命令列上傳單個檔案,沒有設定ftp的上傳目錄
rem 上傳成功返回0,上傳失敗返回1
rem 設定變數
::外部呼叫:
::ftp_up上傳檔案.bat 主機ip 使用者名稱 密碼 當前計算機上傳目錄 上傳檔名
if not "%1" == "" (
if not "%2" == "" (
if not "%3" == "" (
if not "%4" == "" (
if not "%5" == "" (
set ftp_server=%1
set user=%2
set pwd=%3
set filedir=%4
set filename=%5
)))))
rem 檢查檔案是否存在,存在就先刪除再上傳
echo open %ftp_server%>%ftpruncheckexist%
echo %user%>>%ftpruncheckexist%
echo %pwd%>>%ftpruncheckexist%
echo binary>>%ftpruncheckexist%
echo dir . "%ftpdirtxt%">>%ftpruncheckexist%
echo bye>>%ftpruncheckexist%
ftp -s:%ftpruncheckexist%
set bexist=no
for /f "tokens=4 delims= " %%a in (%ftpdirtxt%) do (
if "%%a" == "%filename%" (
set bexist=yes
) )if "%bexist%" == "yes" (
echo open %ftp_server%>%ftprundelete%
echo %user%>>%ftprundelete%
echo %pwd%>>%ftprundelete%
echo delete "%filename%">>%ftprundelete%
echo bye>>%ftprundelete%
ftp -s:%ftprundelete%
)rem 將ftp執行內容輸出到ftp.up檔案
rem 注意 >> 前不要有空格,以防將空格識別為密碼內容而導致登入失敗
echo open %ftp_server%>%ftprun%
echo %user%>>%ftprun%
echo %pwd%>>%ftprun%
echo binary>>%ftprun%
echo put "%filedir%%filename%">>%ftprun%
echo dir . "%ftpdirtxt%">>%ftprun%
echo bye>>%ftprun%
rem 使用-s執行檔案中的內容
ftp -s:%ftprun%
rem 判斷上傳成功或失敗
set res=failed
for /f "tokens=4 delims= " %%a in (%ftpdirtxt%) do (
if "%%a" == "%filename%" (
set res=successful
) )rem 刪除臨時檔案
del %ftprun% /q
del %ftpruncheckexist% /q
del %ftprundelete% /q
del %ftpdirtxt% /q
echo %res%
if "%res%" == "successful" (
@exit /b 0
)@exit /b 1
rem pause
使用ftp上傳檔案
當初做這個的緣由是甲方要求使用者上傳的檔案單獨存放在另一台伺服器上即檔案伺服器與專案所在伺服器分離。commons net commons net 3.6 工具類 檔案伺服器在阿里雲,注意主動模式和被動模式配置 public static boolean storeftpfile string no...
java使用ftp上傳檔案
linux伺服器配置 安裝ftp yum install vsftpd 啟動服務 service vsftpd start 開機啟動 chkconfig level 35 vsftpd on 設定許可權 vi etc vsftpd vsftpd.conf 將配置檔案中 anonymous enabl...
FTP檔案上傳
是網上找的例子,原文找不到了。public class ftputils2 return 判斷是否登入成功 public boolean ftplogin else ftp伺服器連線回答 int reply this.ftpclient.getreplycode if ftpreply.isposi...