davydavid 发表于 2008-11-21 15:56:19

能不能精简下列的SCRIPT有关FTP_已解决

Dim $date
Dim $ip
$date = InputBox("Please input Date","yymd",""," 6")
$ip = InputBox("Please input ipaddress","ipaddress")

Run ("ftp.exe "&$ip)
sleep (1000)
Send ("user")
sleep (1000)
send ("{ENTER}")
sleep (1000)
send ("pwd")
sleep (1000)
send ("{ENTER}")
sleep (2000)
send ("cd replication")
sleep (2000)
send ("{ENTER}")
sleep (2000)
send ("get rsync_logs_"&$date&" d:\ftp\"&$date&"_"&$ip&".txt")
sleep (2000)
send ("{ENTER}")
sleep (2000)
Send ("quit")
sleep (5000)
MsgBox (0, "OK","Finished")

上面这段代码是要在某个FTP上自动下载到本地的。
自己看来都比较蠢:(
1. 想问问高手有什么别的方法。
2. 想问问有没有办法让这段代码是在后台运行的,也就是说是看不出来的。
先谢谢了__

[ 本帖最后由 davydavid 于 2008-11-23 13:36 编辑 ]

akmm88 发表于 2008-11-21 18:53:11

用TCPSEND和TCPRECV。
网络编程对新手比较难,你要先了解FTP协议。

netegg 发表于 2008-11-21 19:06:41

那个延迟是必需的,要不没办法打开

sunless 发表于 2008-11-21 20:45:05

ftp.exe 本身就支持脚本操作。ftp -s:FTPSCRIPT.TXT就是执行 FTPSCRIPT.TXT中的操作。。
下面是FTPSCRIPT.TXT的内容,你只要写AU3脚本 来生成这个TXT 然后再 runwait("ftp.exe" &" -s:FTPSCRIPT.TXT","",@sw_hide)
就可以隐藏运行了。。


open 192.168.0.1
user
password
cd replication
binary
hash
lcd d:\ftp\
get rsync_logs_
bye

bing614 发表于 2008-11-21 21:14:42

不是有FTP的UDF吗?为什么还要模拟键盘操作????????

sbyguli 发表于 2008-11-21 22:01:36

UDF超好用,楼主翻下帮助,上面有的,论坛也有例子,搜FTP就可以找到了

davydavid 发表于 2008-11-23 13:32:38

谢谢大家了~~~

seebbs 发表于 2009-6-23 09:37:37

:face (31):
页: [1]
查看完整版本: 能不能精简下列的SCRIPT有关FTP_已解决