返回列表 发帖

[文本处理] 手工执行批处理可以下载文件,VB代码执行bat能运行,但下载不了文件。

如题:想通过批处理远程下载FTP上面的一个文件,手工单独运行可以成功下载到指定目录,因通过程序代码运行的话能成功调用但无法下载文件。请问这个问题怎么解决,谢谢 贴上代码:

[code=BatchFile]@echo off
set ftpUser=Anonymous
set ftpIP=192.168.0.0
set LocalFolder=D:\temp
set ftpFile=%temp%\TempFTP.txt
>"%ftpFile%" (
echo,%ftpUser%
echo,%ftpPass%
echo cd "%ftpFolder%"
echo lcd "%LocalFolder%"
echo bin
echo ! echo 正在下载...
echo mget *.*
echo ! echo 下载结束...
echo ! ping -n 10 127.1 ^>nul
echo bye
)
start ftp -v -i -s:"%ftpFile%" %ftpIP%
[/code]

@echo off
set ftpUser=Anonymous
set ftpIP=192.168.0.0
set LocalFolder=D:\temp
set ftpFile=%temp%\TempFTP.txt
>"%ftpFile%" (
echo,%ftpUser%

echo cd "%ftpFolder%"
echo lcd "%LocalFolder%"
echo bin
echo ! echo 正在下载...
echo mget *.*
echo ! echo 下载结束...
echo ! ping -n 10 127.1 ^>nul
echo bye
)
start ftp -v -i -s:"%ftpFile%" %ftpIP%
去掉echo,%ftppass% 能正常读取,但只是Anonymous(匿名用户才可以),

@echo off
set ftpUser=admin
set ftppass=123
set ftpIP=192.168.0.0
set LocalFolder=D:\temp
set ftpFile=%temp%\TempFTP.txt
>"%ftpFile%" (
echo,%ftpUser%
echo,%ftpPass%
echo cd "%ftpFolder%"
echo lcd "%LocalFolder%"
echo bin
echo ! echo 正在下载...
echo mget *.*
echo ! echo 下载结束...
echo ! ping -n 10 127.1 ^>nul
echo bye
)
start ftp -v -i -s:"%ftpFile%" %ftpIP%
通用其他用户和密码却无法下载

TOP

回复 2# sgdx2013


    把 %temp%\TempFTP.txt 压缩一下,传上来,我看看。
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 2# sgdx2013


    如果 %temp%\TempFTP.txt 没有生产,请把 test.bat 压缩一下,传上来。
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

echo user username password

TOP

ftp -n ...................

TOP

FTP.txt文件

TOP

手工执行批处理可以下载文件,VB代码执行bat能运行,但下载不了文件。

TOP

echo user username password
flyinnet9 发表于 2015-9-22 14:04



    请问这怎么改

TOP

本帖最后由 flyinnet9 于 2015-9-22 14:29 编辑

echo user ftp用户名 ftp密码

TOP

我是小白,能复制一下我上面的告诉我怎么改吗,好人一生平安

TOP

echo user ftp用户名 ftp密码
flyinnet9 发表于 2015-9-22 14:28



@echo off
set user  ftpUser=admin ftppass=123
set ftpIP=192.168.0.0
set LocalFolder=D:\temp
set ftpFile=%temp%\TempFTP.txt
>"%ftpFile%" (
echo,%ftpUser%
echo,%ftpPass%
echo cd "%ftpFolder%"
echo lcd "%LocalFolder%"
echo bin
echo ! echo 正在下载...
echo mget *.*
echo ! echo 下载结束...
echo ! ping -n 10 127.1 ^>nul
echo bye
)
start ftp -v -i -s:"%ftpFile%" %ftpIP%
这样改吗

TOP

不对啊,,大神

TOP

回复 8# sgdx2013


批处理本身没有问题
echo cd "%ftpFolder%" 这句是多余的可以删掉
可能是VB的问题吧
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

本帖最后由 flyinnet9 于 2015-9-22 15:12 编辑
@echo off
set ftpUser=admin
set ftppass=123
set ftpIP=192.168.0.0
set LocalFolder=D:\temp
set ftpFile=%temp%\TempFTP.txt
>"%ftpFile%" (
echo user %ftpUser% %ftppass%
echo cd "%ftpFolder%"
echo lcd "%LocalFolder%"
echo bin
echo ! echo 正在下载...
echo mget *.*
echo ! echo 下载结束...
echo ! ping -n 10 127.1 ^>nul
echo bye
)
start ftp -n -v -i -s:"%ftpFile%" %ftpIP%COPY

TOP

返回列表