`
reb12345reb
  • 浏览: 47668 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

编写DOS批处理脚本从FTP下载文件

 
阅读更多

工作当中经常需要从远程Linux的指定目录下载文件到自己日常使用的Windows系统,老是通过FTP工具比较麻烦,所以写个batch脚本,每次需要下载的时候只要跑一下脚本就行了,非常方便。

 

 

PS:脚本中有些代码“没用”,其实是为了考虑后期扩展

 

单个batch脚本,从ftp下载文件

Java代码 复制代码 收藏代码
  1. @echo off
  2. SETLOCAL
  3. set BASE_PATH=%~dp0
  4. cd %BASE_PATH%
  5. echo open 192.168.1.6 >%BASE_PATH%\get_yunzhu.txt
  6. echo user yunzhu yunzhu >>%BASE_PATH%\get_yunzhu.txt
  7. echo cd /home/yunzhu >>%BASE_PATH%\get_yunzhu.txt
  8. echo prompt off >>%BASE_PATH%\get_yunzhu.txt
  9. echo mget yunzhu.* >>%BASE_PATH%\get_yunzhu.txt
  10. echo bye >>%BASE_PATH%\get_yunzhu.txt
  11. echo quit >>%BASE_PATH%\get_yunzhu.txt
  12. echo exit >>%BASE_PATH%\get_yunzhu.txt
  13. ftp -n -s:%BASE_PATH%\get_yunzhu.txt
  14. del %BASE_PATH%\get_yunzhu.txt
  15. EXIT /b 0
@echo off
SETLOCAL

set BASE_PATH=%~dp0
cd %BASE_PATH%

echo open 192.168.1.6 >%BASE_PATH%\get_yunzhu.txt
echo user yunzhu yunzhu >>%BASE_PATH%\get_yunzhu.txt
echo cd /home/yunzhu >>%BASE_PATH%\get_yunzhu.txt
echo prompt off >>%BASE_PATH%\get_yunzhu.txt
echo mget yunzhu.* >>%BASE_PATH%\get_yunzhu.txt
echo bye >>%BASE_PATH%\get_yunzhu.txt
echo quit >>%BASE_PATH%\get_yunzhu.txt
echo exit >>%BASE_PATH%\get_yunzhu.txt

ftp -n -s:%BASE_PATH%\get_yunzhu.txt

del %BASE_PATH%\get_yunzhu.txt

EXIT /b 0

 

batch 脚本,根据配置文件,从ftp下载文件

Java代码 复制代码 收藏代码
  1. @echo off
  2. SETLOCAL
  3. set BASE_PATH=%~dp0
  4. cd %BASE_PATH%
  5. set CFG_FILE=%BASE_PATH%\getfile.ini
  6. set LOG_FILE=%BASE_PATH%\getfile.log
  7. set SAVE_PATH=%BASE_PATH%\download
  8. set TMP_PATH=%BASE_PATH%\temp
  9. echo ======================================
  10. set datetime=%date%%time%
  11. echo Start time : %datetime%
  12. PAUSE
  13. if not exist %BASE_PATH% (
  14. mkdir %BASE_PATH%
  15. )
  16. if not exist %SAVE_PATH% (
  17. mkdir %SAVE_PATH%
  18. )
  19. if not exist %TMP_PATH% (
  20. mkdir %TMP_PATH%
  21. )
  22. del /Q %SAVE_PATH%\*
  23. del /Q %TMP_PATH%\*
  24. cd %TMP_PATH%
  25. ftp -n -s:"%CFG_FILE%"
  26. move /Y %TMP_PATH%\* %SAVE_PATH%\
  27. echo --------------------------------------
  28. del %BASE_PATH%\filelist.tmp
  29. dir /B %SAVE_PATH% >> %BASE_PATH%\filelist.tmp
  30. PAUSE
  31. FOR /F "usebackq delims=" %%i IN (`type %BASE_PATH%\filelist.tmp`) DO call echo %%i
  32. echo --------------------------------------
  33. set datetime=%date%%time%
  34. echo End time : %datetime%
  35. PAUSE
  36. ENDLOCAL
  37. EXIT /b 0
@echo off
SETLOCAL

set BASE_PATH=%~dp0
cd %BASE_PATH%

set CFG_FILE=%BASE_PATH%\getfile.ini
set LOG_FILE=%BASE_PATH%\getfile.log
set SAVE_PATH=%BASE_PATH%\download
set TMP_PATH=%BASE_PATH%\temp

echo ======================================
set datetime=%date%%time%
echo Start time : %datetime%
PAUSE

if not exist %BASE_PATH% (
	mkdir %BASE_PATH%
)
if not exist %SAVE_PATH% (
	mkdir %SAVE_PATH%
)
if not exist %TMP_PATH% (
	mkdir %TMP_PATH%
)

del /Q %SAVE_PATH%\*
del /Q %TMP_PATH%\*

cd %TMP_PATH%

ftp -n -s:"%CFG_FILE%"

move /Y %TMP_PATH%\* %SAVE_PATH%\

echo --------------------------------------
del %BASE_PATH%\filelist.tmp
dir /B %SAVE_PATH% >> %BASE_PATH%\filelist.tmp
PAUSE
FOR /F "usebackq delims=" %%i IN (`type %BASE_PATH%\filelist.tmp`) DO call echo %%i

echo --------------------------------------
set datetime=%date%%time%
echo End time : %datetime%
PAUSE

ENDLOCAL
EXIT /b 0

 

上面 batch 脚本使用的配置文件:getfile.ini

Java代码 复制代码 收藏代码
  1. open 192.168.1.6
  2. user yunzhu yunzhu
  3. cd /home/yunzhu
  4. prompt off
  5. mget *.*
  6. bye
  7. quit
  8. exit
分享到:
评论

相关推荐

    dos批处理脚本学习

    dos批处理脚本dos批处理脚本dos批处理脚本

    大量批处理脚本和教程,高手编写的批处理脚本和批处理教程

    批处理脚本和教程 简介: 高手编写的批处理脚本和批处理教程,绝大部分来自中国DOS联盟论坛。

    dos批处理脚本集经典

    硬盘上文件多了乱了,要整理.手动处理太累了,所以找了些批处理脚本.批处理简单,可行.

    bat脚本从FTP下载文件的方式(下载实践的完整实例).bat

    bat脚本从FTP下载文件的方式(下载实践的完整实例)

    如何编写批处理文件批处理文件批处理文件

    简明批处理教程22009年10月20日 星期二 下午 05:35 最近对于批处理技术的探讨比较热,也有不少好的批处理程序发布,但是如果没有一定的相关知识恐怕不容易看懂和理解这些批处理文件,也就更谈不上自己动手编写了,古...

    网蝉dos批处理脚本讲义

    网蝉的DOS批处理脚本学习讲义 <br>大家如果觉得好,可以到我站来看看。 email:kelonre@tom.com<br>msn:kelonre@tom.com<br>QQ:53163108 (请注明申请斑竹字样) 本站QQ群号:31686490;12647825(新群) 本站...

    大量批处理脚本和教程

    批处理脚本和教程 简介: 高手编写的批处理脚本和批处理教程,绝大部分来自中国DOS联盟论坛。

    BAT批处理脚本-实用的批处理文件-70个.zip

    BAT批处理脚本-实用的批处理文件-70个 BAT批处理脚本-提示窗口进度条-17个 BAT批处理脚本-数值计算-23个 BAT批处理脚本-文件相关操作-92个 BAT批处理脚本-文本操作-52个 BAT批处理脚本-格式转换-9个 BAT批处理脚本-...

    DOS批处理高级教程

    DOS批处理高级教程:第一章 批处理基础 DOS批处理高级教程:第二章 DOS循环for命令详解 DOS批处理高级教程:第三章 for命令中的变量 DOS批处理高级教程:第四章 批处理中的变量 DOS批处理高级教程:第五章 set...

    ftp删文件批处理

    批处理定义:顾名思义,批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT或者CMD。这些命令统称批处理命令。 小知识:可以在键盘上按下Ctrl+C组合键来强行终止一个批处理的执行过程...

    DOS批处理实例教程

    批处理,也称为批处理脚本,英文译为BATCH,批处理文件后缀BAT就取的前三个字母。它的构成没有固定格式,只要遵守以下这条就ok了:每一行可视为一个命令,每个命令里可以含多条子命令,从第一行开始执行,直到最后一...

    BAT批处理脚本-文件相关操作-92个.zip

    BAT批处理脚本-实用的批处理文件-70个 BAT批处理脚本-提示窗口进度条-17个 BAT批处理脚本-数值计算-23个 BAT批处理脚本-文件相关操作-92个 BAT批处理脚本-文本操作-52个 BAT批处理脚本-格式转换-9个 BAT批处理脚本-...

    dos批处理脚本命令详解

    对dos的批处理命令进行详细解析,应用举例,应用技巧

    DOS批处理实例教程,值得下载

    批处理,也称为批处理脚本,英文译为BATCH,批处理文件后缀BAT就取的前三个字母。它的构成没有固定格式,只要遵守以下这条就ok了:每一行可视为一个命令,每个命令里可以含多条子命令,从第一行开始执行,直到最后一...

    使用YUICompressor和DOS批处理脚本压缩JavaScript和CSS整理.pdf

    使用YUICompressor和DOS批处理脚本压缩JavaScript和CSS整理.pdf

    BAT批处理脚本-WinXP相关批处理-12个.zip

    BAT批处理脚本-实用的批处理文件-70个 BAT批处理脚本-提示窗口进度条-17个 BAT批处理脚本-数值计算-23个 BAT批处理脚本-文件相关操作-92个 BAT批处理脚本-文本操作-52个 BAT批处理脚本-格式转换-9个 BAT批处理脚本-...

    windows批处理脚本教程

    windows批处理脚本教程,从最基础的学起~~~

    BAT批处理脚本-加密解密-22个.zip

    BAT批处理脚本-实用的批处理文件-70个 BAT批处理脚本-提示窗口进度条-17个 BAT批处理脚本-数值计算-23个 BAT批处理脚本-文件相关操作-92个 BAT批处理脚本-文本操作-52个 BAT批处理脚本-格式转换-9个 BAT批处理脚本-...

    BAT批处理脚本-格式转换-9个.zip

    BAT批处理脚本-实用的批处理文件-70个 BAT批处理脚本-提示窗口进度条-17个 BAT批处理脚本-数值计算-23个 BAT批处理脚本-文件相关操作-92个 BAT批处理脚本-文本操作-52个 BAT批处理脚本-格式转换-9个 BAT批处理脚本-...

    BAT批处理脚本-数值计算-23个.zip

    BAT批处理脚本-实用的批处理文件-70个 BAT批处理脚本-提示窗口进度条-17个 BAT批处理脚本-数值计算-23个 BAT批处理脚本-文件相关操作-92个 BAT批处理脚本-文本操作-52个 BAT批处理脚本-格式转换-9个 BAT批处理脚本-...

Global site tag (gtag.js) - Google Analytics