[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[FTP] 批处理下载FTP服务器上某个目录下的文件

本代码以下载FTP服务器上某个目录下的所有文件为例。

如果需要下载某个目录下的.txt类型的所有文件,请把
mget *.*
改成
mget *.txt

如果需要下载某个目录下的某一个文件a.txt,请把
mget *.*
改成
get a.txt
  1. @echo off
  2. rem 指定FTP用户名
  3. set ftpUser=FTPUSERNAME
  4. rem 指定FTP密码
  5. set ftpPass=FTPPASSWORD
  6. rem 指定FTP服务器地址
  7. set ftpIP=192.168.0.2
  8. rem 指定待下载的文件位于FTP服务器的哪个目录
  9. set ftpFolder=/SharedFile/Log
  10. rem 指定从FTP下载下来的文件存放到本机哪个目录
  11. set LocalFolder=C:\temp
  12. set ftpFile=%temp%\TempFTP.txt
  13. >"%ftpFile%" (
  14.     echo,%ftpUser%
  15.     echo,%ftpPass%
  16.     echo cd "%ftpFolder%"
  17.     echo lcd "%LocalFolder%"
  18.     echo bin
  19.     echo mget *.*
  20.     echo bye
  21. )
  22. start ftp -v -i -s:"%ftpFile%" %ftpIP%
复制代码
首发:http://blog.csdn.net/ljc007/archive/2010/04/17/5496995.aspx

主要是mget命令的使用,以及隐去确认

但是这个存在的一个问题是不能下载无扩展名的文件

TOP

挺有用处的
code is my girlfriend!

TOP

解决了,哈哈`~

TOP

回复 1# HAT


    为什么我用你的代码,运行后只能下载最上层目录下的一个文件啊,下载不了目标路径下的文件》
如/data1/d/df/00,我只能下d目录下的一个文件。怎么回事呢:

TOP

回复 8# voanian


代码咨询&讨论版块试试?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 7# Batcher


    我好像没权限,不知道怎么回事,Batch老师,你能帮忙看一下吗?

TOP

回复 5# voanian


建议单独发帖提问
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 5# voanian


    有人能帮忙吗?

TOP

我要下载的目录会经常变,比如LocalFolder=data1/on/8awx/e8/00/54,我需要经常变化路径"54",有可能是00,01,02,03...99等等... 请问如何实现?希望在运行窗口可以有提示让手动输入最后一个目录~
如下:@echo off
cls
echo open 10.90.248.164>c:\ftp.txt
echo usrtst01>>c:\ftp.txt
echo usr01>>c:\ftp.txt
echo cd /data1/on/9x6000/8awx/e8/00/63>>c:\ftp.txt
echo lcd D:\Test>>c:\ftp.txt
echo bin>>c:\ftp.txt
echo mget *.gls>>c:\ftp.txt
echo -----正在下载,请稍后...
echo quit>>c:\ftp.txt
Start ftp -v -i -s:"c:\ftp.txt"
set /p i="LotID:"
copy *.gls %i%
copy *.xls D:\Test\Data
del s *.gls *.lot *.xls
我每次下载之前都需要进入到bat里面编辑,很麻烦,还得手动输入“LotID”(实际输入的是63.xls=63,因为我要生成的是.xls文件),能不能有一种连接字符串的方法直接输入一次63,即可达到更改下载目录和输入63.xls的方法啊?

TOP

留脚印,以后用得上

TOP

收藏了,,不过没有看懂怎么执行的

TOP

非常有用的哦,学习了,但是还没有测试哦

TOP

返回列表