找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 90812|回复: 18

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

[复制链接]
发表于 2015-9-22 10:10:54 | 显示全部楼层 |阅读模式
如题:想通过批处理远程下载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]
 楼主| 发表于 2015-9-22 13:50:14 | 显示全部楼层
@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%
通用其他用户和密码却无法下载
发表于 2015-9-22 13:53:24 | 显示全部楼层
回复 2# sgdx2013


    把 %temp%\TempFTP.txt 压缩一下,传上来,我看看。
发表于 2015-9-22 13:59:51 | 显示全部楼层
回复 2# sgdx2013


    如果 %temp%\TempFTP.txt 没有生产,请把 test.bat 压缩一下,传上来。
发表于 2015-9-22 14:04:37 | 显示全部楼层
echo user username password
发表于 2015-9-22 14:11:02 | 显示全部楼层
ftp -n ...................
 楼主| 发表于 2015-9-22 14:20:02 | 显示全部楼层
FTP.txt文件
 楼主| 发表于 2015-9-22 14:23:35 | 显示全部楼层
手工执行批处理可以下载文件,VB代码执行bat能运行,但下载不了文件。
 楼主| 发表于 2015-9-22 14:27:07 | 显示全部楼层
echo user username password
flyinnet9 发表于 2015-9-22 14:04



    请问这怎么改
发表于 2015-9-22 14:28:33 | 显示全部楼层
本帖最后由 flyinnet9 于 2015-9-22 14:29 编辑

echo user ftp用户名 ftp密码
 楼主| 发表于 2015-9-22 14:30:04 | 显示全部楼层
我是小白,能复制一下我上面的告诉我怎么改吗,好人一生平安
 楼主| 发表于 2015-9-22 14:33:50 | 显示全部楼层
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%
这样改吗
 楼主| 发表于 2015-9-22 14:38:07 | 显示全部楼层
不对啊,,大神
发表于 2015-9-22 15:05:24 | 显示全部楼层
回复 8# sgdx2013


批处理本身没有问题
echo cd "%ftpFolder%" 这句是多余的可以删掉
可能是VB的问题吧
发表于 2015-9-22 15:11:14 | 显示全部楼层
本帖最后由 flyinnet9 于 2015-9-22 15:12 编辑
  1. @echo off
  2. set ftpUser=admin
  3. set ftppass=123
  4. set ftpIP=192.168.0.0
  5. set LocalFolder=D:\temp
  6. set ftpFile=%temp%\TempFTP.txt
  7. >"%ftpFile%" (
  8. echo user %ftpUser% %ftppass%
  9. echo cd "%ftpFolder%"
  10. echo lcd "%LocalFolder%"
  11. echo bin
  12. echo ! echo 正在下载...
  13. echo mget *.*
  14. echo ! echo 下载结束...
  15. echo ! ping -n 10 127.1 ^>nul
  16. echo bye
  17. )
  18. start ftp -n -v -i -s:"%ftpFile%" %ftpIP%
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 15:05 , Processed in 0.017636 second(s), 7 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表