中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-06-15 02:39
中国DOS联盟论坛 » DOS疑难解答 & 问题讨论 (解答室) » [求助]dos批处理怎样处理带参数的ftp
楼 主 [求助]dos批处理怎样处理带参数的ftp 发表于 2004-07-26 00:00 ·  中国 山东 济南 联通
初级用户
积分 110
发帖 3
注册 2004-07-26 00:00
UID 29014
性别 男
状态 离线
dos批处理中使用ftp命令时,可以使用ftp -s:filename 的方式取得文件,但是如果在filename文件中添加参数该怎么处理?
2 发表于 2004-07-26 00:00 ·  中国 河北 石家庄 联通
铂金会员
★★★★
网络独行侠
积分 6,962
发帖 2,753
注册 2003-04-16 00:00
UID 1565
性别 男
来自 河北保定
状态 离线
你想添加什么参数?filename相当于FTP提示符下的一个批处理文件,这里面每一行也会列出一个FTP命令,加什么参数取决于FTP提示符下提供的命令的功能。如果命令不能实现的,你当然也加不到filename文件中。
偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
3 发表于 2004-07-27 00:00 ·  中国 山东 济南 联通
初级用户
积分 110
发帖 3
注册 2004-07-26 00:00
UID 29014
性别 男
状态 离线
首先感谢您的回复,我也通读了您的帖子。
简单的说,我的目的在于编写一个批处理文件,可以实现我到固定机器固定目录下ftp获得任意文件的目的,比如说:我今天想获得文件 ss.txt,那么我执行 myftp ss.txt,而我明天想获得文件 dd.txt,那么我执行 myftp dd.txt。(myftp即我需要的批处理文件),但我不知道如何将 ss.txt(dd.txt)以参数的方式被引用于filename中。
但愿我的表述能够让您充分理解我的意图。
再次感谢您的帮助。
4 发表于 2004-07-27 00:00 ·  中国 河北 石家庄 联通
铂金会员
★★★★
网络独行侠
积分 6,962
发帖 2,753
注册 2003-04-16 00:00
UID 1565
性别 男
来自 河北保定
状态 离线
确实理解了。而且实现起来并不复杂。两种方法吧:1、先编写好一个filename的模板,在里面将你要get的文件名用一个特定的字符串标识出来,例如你可以标识成%MyFile%。然后你可以在myftp这个批处理中使用字符串替换命令(例如change)临时将filename中的字符串替换成你要取得的文件名,然后使用ftp -s:filename的方式下载文件。当然,为了重复这个过程,你可以需要在对filename进行替换操作之前先备份一下这个文件。例如:copy filename temp
replace temp with %1
ftp -s:temp
del temp
2、你可以在myftp.bat中动态生成filename文件,例如:
echo open ServerIP Port > filename
echo anonymous >> filename
echo someone@on.the.net >> filename
echo cd /somedir >> filename
echo get %1 >> filename
echo bye >> filename
ftp -s:filename其实还有另一种办法,你可以使用wget来代替ftp。
wget ftp://user:password@serverip/somedir/%1这一条命令就够了。上面给出的样例脚本都是myftp.bat的内容,只是描述你要做的操作,请根据实际情况完善。
偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
5 发表于 2004-07-29 00:00 ·  中国 山东 济南 联通
初级用户
积分 110
发帖 3
注册 2004-07-26 00:00
UID 29014
性别 男
状态 离线
非常感谢,而且佩服得五体投地。
再次感谢
!!!!
论坛跳转: