中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [已结] 讨教自动备份文件到FTP上的 批处理
« [1] [2] »
作者:
标题: [已结] 讨教自动备份文件到FTP上的 批处理 取消高亮 | 上一主题 | 下一主题
chainliq
高级用户

学无尽止


积分 635
发帖 244
注册 2006-4-15
来自 广西贵港
状态 离线
『楼 主』:  [已结] 讨教自动备份文件到FTP上的 批处理

有个想法,可能我这个想法以前以经有N个人问过啦,可我现在还是弄不懂。
想向各位讨教:
2003上的FTP 我想在收费系统的计划任务里面做个批处理,运行批处理的时候能自动登陆到FTP上,并复制本机D:\1234 到FTP上的D:\备份    中,我试过好多参数,可都不成功,不知道为什么,


哈哈,我好像变成个问题王啦,差不多每天都有问题响,真不好意思!

[ Last edited by chainliq on 2006-11-6 at 11:36 PM ]

2006-10-30 23:42
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (86682419)  编辑帖子  回复  引用回复
vkill
金牌会员





积分 4103
发帖 1744
注册 2006-1-20
来自 甘肃.临泽
状态 离线
『第 2 楼』:  

ftp -n -s:test.txt

test.txt
o 127.0.0.1 21
user admin
pass
put D:\1234\*.*
exit

大概这个意思

   此帖被 +2 点积分     点击查看详情   
评分人:【 redtek 分数: +2  时间:2006-10-31 10:25


2006-10-31 01:09
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
chainliq
高级用户

学无尽止


积分 635
发帖 244
注册 2006-4-15
来自 广西贵港
状态 离线
『第 3 楼』:  



  Quote:
Originally posted by he200377 at 2006-10-31 01:09:
ftp -n -s:test.txt

test.txt
o 127.0.0.1 21
user admin
pass
put D:\1234\*.*
exit

大概这个意思

你的意思是说把
o 127.0.0.1 21
user admin
pass
put D:\1234\*.*
exit
写入test记事本里保存为test.txt
然后再调用:ftp -n -s:test.txt 吗
那test.txt存放在哪儿呀!
请指教!

2006-10-31 09:41
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (86682419)  编辑帖子  回复  引用回复
redtek
金牌会员





积分 2902
发帖 1147
注册 2006-9-21
状态 离线
『第 4 楼』:  

ftp -n -s:test.txt 含意是:你在ftp里要键入的那些指令单放在一个脚本文件里了,名为 test.txt
             参数  -S: 代表后面是指定的带有自动指令的脚本命令文件。

更详细的信息可以看它的帮助,FTP --help 就可以看帮助信息了,而 FTP /?则不会出现帮助。
FTP --HELP的获得帮助信息的这种 --HELP而非 /?来源于Linux风格,那里用法也一样。
C:\windows\system32>ftp --help

Transfers files to and from a computer running an FTP server service
(sometimes called a daemon). Ftp can be used interactively.

FTP [-v] [-d] [-i] [-n] [-g] [-s:filename] [-a] [-A] [-x:sendbuffer] [-r:
fer] [-b:asyncbuffers] [-w:windowsize] [host]

  -v              Suppresses display of remote server responses.
  -n              Suppresses auto-login upon initial connection.
  -i              Turns off interactive prompting during multiple file
                  transfers.
  -d              Enables debugging.
  -g              Disables filename globbing (see GLOB command).
  -s:filename     Specifies a text file containing FTP commands; the
                  commands will automatically run after FTP starts.
  -a              Use any local interface when binding data connection.
  -A              login as anonymous.
  -x:send sockbuf Overrides the default SO_SNDBUF size of 8192.
  -r:recv sockbuf Overrides the default SO_RCVBUF size of 8192.
  -b:async count  Overrides the default async count of 3
  -w:buffer size  Overrides the default transfer buffer size of 65535.
  host            Specifies the host name or IP address of the remote
                  host to connect to.

Notes:
  - mget and mput commands take y/n/q for yes/no/quit.
  - Use Control-C to abort commands.
既然是FTP一运行就要调用你通过 -S:参数指定的自动指令脚本文件,
那么这个 test.txt 当然要在当前目录才能找到了。


为什么test.txt 的内容是这样的:
o 127.0.0.1 21
user admin
pass
put D:\1234\*.*
exit
 

因为如果你直接进入FTP的话,也要先告诉它你要连接哪个服务器吧?
所以指令为:
open  你要连接的服务器地址   21

这个21为你要指定连接服务器的端口(一般都默认为21,如果不是21一般是为了防黑客扫描……等特殊原因)

然后服务连接通了,
自然要你输入登录名与密码,
所以,如果你亲自用FTP内操作一回,记住你都用过什么指令了,
就可以单写出一个这个“回答”指令自动执行的命令集,放到一个文本文件里,
然后如he200377的示例原理一样进行操作就行了。

进入FTP内,如果键入 ? 还可以获得更详细的命令帮助。
         

至于你的自动应答的指令文件(test.txt)内都放哪些操作指令,
这要你先手功使用ftp把你要的所用工作操作一遍,
这样你就知道系统会问你什么,然后你要输入什么内容(这个输入的就是要放到自动指令集文件内的)。

[ Last edited by redtek on 2006-10-31 at 10:24 AM ]



    Redtek,一个永远在网上流浪的人……

_.,-*~'`^`'~*-,.__.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._
2006-10-31 10:21
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
chainliq
高级用户

学无尽止


积分 635
发帖 244
注册 2006-4-15
来自 广西贵港
状态 离线
『第 5 楼』:  

我按照做啦,是能连接,可为什么不能动动上传文件呢!

2006-11-5 05:45
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (86682419)  编辑帖子  回复  引用回复
vkill
金牌会员





积分 4103
发帖 1744
注册 2006-1-20
来自 甘肃.临泽
状态 离线
『第 6 楼』:  



  Quote:
Originally posted by chainliq at 2006-11-5 05:45:
我按照做啦,是能连接,可为什么不能动动上传文件呢!

上传不能用*.*啊~要写本地的完整路径

2006-11-5 05:52
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
chainliq
高级用户

学无尽止


积分 635
发帖 244
注册 2006-4-15
来自 广西贵港
状态 离线
『第 7 楼』:  

写啦呀,可是还是上传了,可我在CMD下用put却能,而你下下方法:

ftp -n -s:test.txt

test.txt内容是:
o 192.168.2.248 21
user ****
pass ****
cd MYDOS
put d:\新建文件夹\98765432.txt
exit
by

可是就是上传不上去,不知道为什么!

而这样做却可以

运行-cmd
输入 FTP IP
再输入用户名和密码
Put  d:\新建文件夹\98765432.txt
by

这样又可以,不知道为什么哦!

2006-11-5 06:01
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (86682419)  编辑帖子  回复  引用回复
vkill
金牌会员





积分 4103
发帖 1744
注册 2006-1-20
来自 甘肃.临泽
状态 离线
『第 8 楼』:  



  Quote:
Originally posted by chainliq at 2006-11-5 06:01:
写啦呀,可是还是上传了,可我在CMD下用put却能,而你下下方法:

ftp -n -s:test.txt

test.txt内容是:
o 192.168.2.248 21
user ****
pass ****
cd MYDOS
put d:\新堮..

剩下的就自己慢慢揣摩了哦~谁都不是每个问题都懂的

2006-11-5 06:14
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
redtek
金牌会员





积分 2902
发帖 1147
注册 2006-9-21
状态 离线
『第 9 楼』:  

经过测试我这里没有问题,同时也模拟了你的目录位置:  D:\新建文件夹\98765432.txt以预防不太可能的万分之分一错误……

测试FTP服务器类型:Linux主机

你的test.txt指令文件如下:
(注:不要在登录名或密码前面加user或pass的指令,直接写登录名或密码就行了)
(如果你的登录名是abc,那么就写abc……)
你的FTP登录名
你的FTP的登录密码
cd mydos
put d:\新建文件夹\98765432.txt
by
你的FTP应该如下方式使用:
FTP.EXE     -S:test.txt    192.168.2.248
(即:直接就指定命令文件test.txt,然后直接指定要登录的服务器地址就行了)


然后再试一下,应该没有问题。
就是万一出现了问题也没什么,看错误信息(如何FTP命令都比较熟悉的话)。

[ Last edited by redtek on 2006-11-5 at 06:34 AM ]



    Redtek,一个永远在网上流浪的人……

_.,-*~'`^`'~*-,.__.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._
2006-11-5 06:30
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
redtek
金牌会员





积分 2902
发帖 1147
注册 2006-9-21
状态 离线
『第 10 楼』:  

另:你的命令脚本是EXIT指令是什么?
C:\WINDOWS>ftp
ftp> he
Commands may be abbreviated.  Commands are:

!               delete          literal         prompt          send
?               debug           ls              put             status
append          dir             mdelete         pwd             trace
ascii           disconnect      mdir            quit            type
bell            get             mget            quote           user
binary          glob            mkdir           recv            verbose
bye             hash            mls             remotehelp
cd              help            mput            rename
close           lcd             open            rmdir
FTP里好象没有exit这个指令吧?



    Redtek,一个永远在网上流浪的人……

_.,-*~'`^`'~*-,.__.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._
2006-11-5 06:37
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 11 楼』:  



  Quote:
Originally posted by chainliq at 2006-11-5 06:01:
写啦呀,可是还是上传了,可我在CMD下用put却能,而你下下方法:

ftp -n -s:test.txt

test.txt内容是:
o 192.168.2.248 21
user ****
pass ****
cd MYDOS
put d:\新堮..


  问题很可能就出在你的这个test.txt的内容上面。

  你已经用了"o 192.168.2.248 21",那么下面就直接接上用户名和密码就行了,不需要在前面加"user ""pass "什么的。而且ftp里面登出是用"bye",而不是"exit"。


   此帖被 +2 点积分     点击查看详情   
评分人:【 redtek 分数: +2  时间:2006-11-5 20:08


2006-11-5 13:40
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
chainliq
高级用户

学无尽止


积分 635
发帖 244
注册 2006-4-15
来自 广西贵港
状态 离线
『第 12 楼』:  

我知道啦,就是在输入完用户名那里出现个错误提示“ Not connected"  这个意思是说,没有连接上或没有共享,
请问如何解决呀1

2006-11-6 23:06
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (86682419)  编辑帖子  回复  引用回复
redtek
金牌会员





积分 2902
发帖 1147
注册 2006-9-21
状态 离线
『第 13 楼』:  

不是给楼主举实际的例子了吗?
而且FTP服务器架设……到FTP指令的基本正确操作我不知道楼主是不是都非常熟悉?(但上面的例子已经举得非常清楚:)

同时,我不知道如果FTP服务器或是因防火墙的原因而导致你不能正确接入服务器,
端口是否开启等楼主是否能正确判断出来?

(如果楼主不能判断出来,请详细提示你操作的步骤)
(其实楼上举的例已经非常清楚啦:)、



    Redtek,一个永远在网上流浪的人……

_.,-*~'`^`'~*-,.__.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._
2006-11-6 23:30
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
chainliq
高级用户

学无尽止


积分 635
发帖 244
注册 2006-4-15
来自 广西贵港
状态 离线
『第 14 楼』:  

哈哈,解决啦,呵呵,没想到换个方法就KO````啦!!还是要动动脑袋的呀!
o 192.168.2.248 21
user gg123 ********       
cd MYDOS
put ``````````

谢谢各位的帮忙呀!!

[ Last edited by chainliq on 2006-11-7 at 10:52 PM ]

2006-11-6 23:35
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (86682419)  编辑帖子  回复  引用回复
vkill
金牌会员





积分 4103
发帖 1744
注册 2006-1-20
来自 甘肃.临泽
状态 离线
『第 15 楼』:  

楼主,pass ****这句只写****就可以了啊~写pass是错误的吧!

2006-11-7 09:21
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: