怎样制作自动下载/上传文件的FTP脚本文件

msdos我需要从一个FTP服务器上每分钟下载一个文本文件到一个数据库服务器上。一般来说,大多数的FTP下载软件,象自己用的WS_FTP Pro,有这种自动下载功能。但这次我不想安装、利用任何第三方的FTP客户端程序,而是想通过Windows自带的简单FTP命令来实现这种功能。

下面就是我最后生成一个文本batch文件,你可以copy&paste复制到你的记事本里生成你自己的FTP自动下载命令文件。至于详细的命令解释,可以参考我的英文原文(Make a free auto get/put files schedule with FTP scripts in DOS environment)。

简单解释:

在你的Windows OS 里,移步到你的DOS界面,然后直接敲 FTP,你就可以登录到你的远程FTP服务器。若你想自动运行FTP(包括输入你的FTP服务器信息,登录用户名和密码),可以使用FTP.exe 的”-s:” 选项。

这样,比方你生成一个FTP的登录脚本文件叫FTPSCRIPT.TXT,你就可以在DOS里使用以下命令:

ftp -s:FTPSCRIPT.TXT


在你的那个FTPSCRIPT.TXT文本文件里,可以有以下参考命令(可以按照你自己的需要更改)

open ftp.microsoft.com
anonymous
username@nowhere.com
cd Products
cd Windows
cd Windows95
cd CDRomExtras
cd AdministrationTools
cd ApplicationTools
binary
hash
lcd c:\
get envars.exe
bye

自动运行的脚本文件样本:

如果你也象我一样,需要系统自动运行上述FTP脚本文件,可以将上述的文本文件稍做修改,变成一个可以通过计划Schedule运行的batch自动运行命令文件。于是,我将我的这个FTPSCRIPT.TXT改成有bat后缀名的命令文件,比方叫AUTOFTP.bat 。里面的命令行改成以下文字:

%windir%\system32\ftp.exe -s:”%f0″
goto done
open ftp.microsoft.com
anonymous
username@nowhere.com
cd Products
cd Windows
cd Windows95
cd CDRomExtras
cd AdministrationTools
cd ApplicationTools
binary
hash
lcd c:\
get envars.exe
bye
:done
@echo off
cls
exit

这个 AUTOFTP.bat 文件的好处就是它既可以做batch文件来运行,并且有在命令里将自己作为一个FTP 脚本文件来调用。由于自己在英文原文里已经解释十分清楚了,这里就不再罗嗦了。有什么具体应用问题,敬请留言之。(注意:上述代码是针对Windows 2000/XP/2003环境的)

3 Responses to “怎样制作自动下载/上传文件的FTP脚本文件”

  1. Wm Rabon

    Grab the existing tariff of gold every troy oz, break down this specific value by way of Thirty-one.One h and after that increase the result because of the karat importance of your current gold.

    [Reply]

  2. Ted Merrow

    Awesome blog! Is your theme custom made or did you download it from somewhere? A theme like yours with a few simple adjustements would really make my blog stand out. Please let me know where you got your theme. With thanks

    [Reply]

  3. scada system

    I’m curious to find out what blog system
    you happen to be utilizing? I’m having some small security problems with my latest website and I’d like to find something
    more secure. Do you have any solutions?

    Have a look at my page; scada system

    [Reply]

Leave a Reply

Your email address will not be published. Required fields are marked *