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

[网络连接] 批处理如何实现本机文件与FTP上的文件同步?

我单位有个工作用的文件经常更新,
每次更新都要我们从FTP上复制文件到自己的硬盘上,
有时一天更新好几次。
我想到是否能用批处理文件实现本机文件与FTP上文件自动同步?
我们单位FTP的IP:192.168.71.190,文件夹:xu\材料钢锭
用户名:lhh,密码:1234
我电脑的IP:192.168.67.70,文件夹:c:\材料钢锭
FTP这个文件夹里的所有文件(各种类型都有)都要复制到本机上,一律覆盖。
哪位高手帮我一下?

我以前写的。自己看看吧。要考试了。
====================== > BY NOVAA <==========================
大家有的时候需要用到FTP进行文件的下载和上传。送给不知道如何结合的朋友。。
首先。介绍一下基本的命令
1.echo 这个命令除了显示外还可以配合重定向符 > ,>>进行文件的写入。
比如:
  1. echo 批处理之家>d:\hx.txt
复制代码
这样就在D:盘先建立了一个hx.txt的文档。
有的时候我们写入的东西包含特殊的字符.比如重定向符>这个时候怎么办呢?
2.重定向符> 与>>
>与>>的区别是
>写入文件的时候会把原文件的内容覆盖掉。
>>就是在原内容的末尾上加上新的内容.
3.转义字符^
^就是说明跟在^后面的东西是一个符号。这个通常用在特殊字符的地方。
比如
  1. echo echo haha ^>^> >>hx.txt
  2. echo echo haha >>hx.txt
复制代码
两个的区别就是前面的会在hx.txt中写入 echo haha >>
后面的会在hx.txt中写入 echo haha
这是因为>本来就是一个重定向符。如果没有加上转义符。CMD就会把>>当作重定向符。
顺便说下
重定向符还在如下的语句中广泛应用。
  1. for /f %%i in ('dir c:^|findstr hx') do (
  2. )
复制代码
4.::
这个是批处理中的解释命令。说明语句的用处的。
和C#中的//一样

OK。现在大家可以写如何上传和下载FTP的了。
关于FTP这个命令大家可以参考这个网址。我就不多说了。
http://www.main365.net/article.asp?id=400
现在我们一起来写一个下载文件的
  1. @echo off
  2. ::说明:如果你用域名,前面别加"http://"
  3. echo open 域名(IP地址) >ftp.txt
  4. echo 用户名 >>ftp.txt
  5. echo 密码 >>ftp.txt
  6. :: 说明:如果下载多个文件,就多加几行,格式一样.
  7. echo get 获取的文件 >>ftp.txt
  8. echo quit >>ftp.txt
  9. ftp -s:ftp.txt
  10. del ftp.txt
复制代码
想大家一定知道怎么写上传的了吧。
就是把get换为put
  1. @echo off
  2. echo open 域名(IP地址) >ftp.txt
  3. echo 用户名 >>ftp.txt
  4. echo 密码 >>ftp.txt
  5. echo put 获取的文件 >>ftp.txt
  6. echo quit >>ftp.txt
  7. ftp -s:ftp.txt
  8. del ftp.txt
复制代码
ㄗs:A good programming is 99% sweat and 1% coffee!--①個亾

============ >   hi.baidu.com/novaa   <============

TOP

我参照楼上的编成自己的文件如下:
  1. @echo off
  2. echo open 192.168.71.190 >0-ftp.txt
  3. echo lhh >>0-ftp.txt
  4. echo 1234 >>0-ftp.txt
  5. echo get xu/仓库系统/材料钢锭/app_console.exe D:\ftp-get\app_console.exe >>0-ftp.txt
  6. echo get xu/仓库系统/材料钢锭/appaddress.reg D:\ftp-get\appaddress.reg >>0-ftp.txt
  7. echo get xu/仓库系统/材料钢锭/arrowl.ico D:\ftp-get\arrowl.ico >>0-ftp.txt
  8. .......
  9. echo get xu/仓库系统/材料钢锭/wms_stlg_ygjk.pbd d:\ftp-get\wms_stlg_ygjk.pbd >>0-ftp.txt
  10. echo get xu/仓库系统/材料钢锭/wms_ws.pbd d:\ftp-get\wms_ws.pbd >>0-ftp.txt
  11. echo get xu/仓库系统/材料钢锭/wms_xiujiu.pbd d:\ftp-get\wms_xiujiu.pbd >>0-ftp.txt
  12. echo quit d:\ftp-get\ >>0-ftp.txt
  13. ftp -s:0-ftp.txt
复制代码
但是存在一个问题,第一次运行的时候一切正常,
但是第二次运行的时候就发现有些文件无法正常传输,
变成0KB了,我不知道是怎么回事
求赐教

TOP

哪位高手指点一二啊?
我琢磨了好几天都没有想到

TOP

百度下吧。
没有遇到过这情况。

[ 本帖最后由 novaa 于 2008-1-21 11:54 编辑 ]
ㄗs:A good programming is 99% sweat and 1% coffee!--①個亾

============ >   hi.baidu.com/novaa   <============

TOP

返回列表