Board logo

标题: [文件操作] ftp上传文件夹内文件并删除,日志记录上传结果 [打印本页]

作者: qq445690173    时间: 2022-5-25 11:37     标题: ftp上传文件夹内文件并删除,日志记录上传结果

求助:现在是有目录一直有新数据产生,需要把目录内的数据通过ftp传到另一台机器上,传输之后删除文件,日志记录上传结果。
或者简化把指定目录内现有的数据通过FTP批处理定时传到另一台机器上,传输之后删除文件,日志记录上传结果。
不会批处理,特来请教,在线等,非常感谢!
作者: flashercs    时间: 2022-5-25 16:15

  1. @echo off
  2. @REM 功能:上传文件到ftp服务器
  3. cd /d "%~dp0"
  4. @REM ftp服务器地址
  5. set server=localhost
  6. @REM ftp端口
  7. set port=21
  8. @REM 用户名
  9. set user=flashercs
  10. @REM 密码
  11. set pass=password
  12. @REM 上传文件所在路径
  13. set lcd=.
  14. @REM 上传文件名
  15. set filelist=*
  16. @REM 上传ftp的目标路径
  17. set pwd=/
  18. set ftpscript="%temp%\~ftptest1.script"
  19. pushd "%lcd%"
  20. >%ftpscript% (
  21.   echo open %server% %port%
  22.   echo %user%
  23.   echo %pass%
  24.   echo bin
  25.   echo cd %pwd%
  26.   echo mput %filelist%
  27.   echo quit
  28. )
  29. REM download files in pwd and get dirs tree
  30. ftp -v -i -s:%ftpscript%
  31. if errorlevel 1 (
  32.   echo 上传文件 %filelist% 到FTP Server %server% 失败.
  33. ) else (
  34.   echo 上传文件 %filelist% 到FTP Server %server% 成功.
  35.   del /f /q %filelist%
  36. )
  37. del %ftpscript%
  38. popd
  39. @REM pause
  40. exit /b
复制代码

作者: qq445690173    时间: 2022-5-25 16:33

回复 2# flashercs


   刚刚测试好像有点问题,本地目录是怎么写,上传文件名是怎么写,比如全部是 .txt文件,是写*.txt吗?
   程序运行到mput 命令界面,我测试时候就三个文件。
@echo off
@REM 上传文件所在路径
set lcd=E:\1111\
@REM 上传文件名
set filelist=*.txt
@REM 上传ftp的目标路径
set pwd=/
作者: flashercs    时间: 2022-5-25 17:03

回复 3# qq445690173


    是这样写的.




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2