|
oozic
初级用户
 
积分 35
发帖 25
注册 2007-11-28
状态 离线
|
『楼 主』:
FTP传输文件偶有失败 怎么弄?
FTP的LOG如下!有1个文件FAILURE了。
我现在设想的功能是如果是SUCCESS则move掉,FAILURE的话则一直保留在传输目录。请问怎么实现啊?因为我后面还有个bat 会move传输文件夹的所有文件到备份目录的。所以不能区分哪个文件传输失败了,只能靠看LOG。
Transferring D:\apple\945DC\945DC_1512_XDESC_00389.TXT to 945DC_1512_XDESC_00389.TXT
FAILURE, Start: 05:43:01 End: 05:43:53 Bytes: 1588PUT 945DC_1512_XDESC_00389.TXT Mode 0
Transferring D:\apple\945DC\945DC_1512_XDESC_00391.TXT to 945DC_1512_XDESC_00391.TXT
SUCCESS, Start: 05:43:53 End: 05:43:54 Bytes: 376PUT 945DC_1512_XDESC_00391.TXT Mode 0
Transferring D:\apple\945DC\945DC_1512_XDESC_00392.TXT to 945DC_1512_XDESC_00392.TXT
SUCCESS, Start: 05:43:54 End: 05:43:55 Bytes: 1328PUT 945DC_1512_XDESC_00392.TXT Mode 0
Transferring D:\apple\945DC\945DC_1512_XDESC_00393.TXT to 945DC_1512_XDESC_00393.TXT
SUCCESS, Start: 05:43:55 End: 05:43:55 Bytes: 400PUT 945DC_1512_XDESC_00393.TXT Mode 0
Transferring D:\apple\945DC\945DC_1512_XDESC_00394.TXT to 945DC_1512_XDESC_00394.TXT
SUCCESS, Start: 05:43:55 End: 05:43:56 Bytes: 21004PUT 945DC_1512_XDESC_00394.TXT Mode 0
Transferring D:\apple\945DC\945DC_1512_XDESC_00395.TXT to 945DC_1512_XDESC_00395.TXT
SUCCESS, Start: 05:43:56 End: 05:43:56 Bytes: 5464PUT 945DC_1512_XDESC_00395.TXT Mode 0
MPUT returned 226 File retreived successfully (network bytes 5464/file bytes 5408)
|
|
2008-9-10 14:31 |
|
|
huahua0919
银牌会员
    
积分 1608
发帖 780
注册 2007-10-7
状态 离线
|
『第
2 楼』:
添加errorlevel判断文件是否传输失败.
|
|
2008-9-10 14:35 |
|
|
HAT
版主
       
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
『第
3 楼』:
把"后面那个bat"的内容贴出来看看?
在move之前,自动搜索一下ftp的log就行了。
|

|
|
2008-9-10 14:38 |
|
|
HAT
版主
       
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
『第
4 楼』:
在put后面判断errorlevel吗?不行吧,ftp命令不支持这样做。
|

|
|
2008-9-10 14:39 |
|
|
oozic
初级用户
 
积分 35
发帖 25
注册 2007-11-28
状态 离线
|
『第
5 楼』:
bat 就是
Move D:\apple\945DC\945DC*.txt D:\apple\945DC\archive
就是这样的把 所有945DC*.txt移掉,但是如果有错的也一并移掉了。
现在设想是把失败的保留 成功的移掉。
|
|
2008-9-10 14:42 |
|
|
HAT
版主
       
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
『第
6 楼』:
@echo off
setlocal enabledelayedexpansion
set SrcDir=D:\apple\945DC
set DstDir=D:\apple\945DC\archive
for %%a in ("%SrcDir%\945DC*.txt") do (
findstr /i "FAILURE" "C:\test\ftp.log"|findstr /i /c:"%%~nxa">nul
if !errorlevel! neq 0 (
move /y "%%a" "%DstDir%"
)
)
此帖被 +2 点积分 点击查看详情 评分人:【 oozic 】 | 分数: +2 | 时间:2008-9-10 16:04 |
|
|

|
|
2008-9-10 14:58 |
|
|
oozic
初级用户
 
积分 35
发帖 25
注册 2007-11-28
状态 离线
|
『第
7 楼』:
Originally posted by HAT at 2008-9-10 02:58 PM:
[code]@echo off
setlocal enabledelayedexpansion
set SrcDir=D:\apple\945DC
set DstDir=D:\apple\945DC\archive
for %%a in ("%SrcDir%\945DC*.txt" do (
findstr /i "FAILURE" & ... 非常感谢!我试试! 
|
|
2008-9-10 15:06 |
|
|
HAT
版主
       
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
『第
8 楼』:
因为LOG里肯定查的到FAILURE的 所以肯定所有的文件都移不掉^^ 先测试,后评论,别说的那么肯定^_^
|

|
|
2008-9-10 15:22 |
|
|
oozic
初级用户
 
积分 35
发帖 25
注册 2007-11-28
状态 离线
|
『第
9 楼』:
|findstr /i /c:"%%~nxa"
恩我知道了!我把你那段给删了 所以导致出现那个问题!
非常 非常感谢!
|
|
2008-9-10 15:29 |
|
|
oozic
初级用户
 
积分 35
发帖 25
注册 2007-11-28
状态 离线
|
『第
10 楼』:
Originally posted by HAT at 2008-9-10 02:58 PM:
[code]@echo off
setlocal enabledelayedexpansion
set SrcDir=D:\apple\945DC
set DstDir=D:\apple\945DC\archive
for %%a in ("%SrcDir%\945DC*.txt" do (
findstr /i "FAILURE" & ... 版主,不好意思。
现在这个代码又有点麻烦,因为这里检查的是ftp log里的日志文件。
如果FTP成功的 都移到了D:\apple\945DC\archive文件里了,没成功的就一直留在了D:\apple\945DC
下次没成功的文件 如果上传成功了 又会去检查原来的ftp log里的日志文件,这样它肯定又会检查到以前不成功的记录,这样就把这个问题一直留在了D:\apple\945DC了 
|
|
2009-4-16 02:48 |
|
|
yishanju
银牌会员
     [b]看你妹啊[/b]
积分 1488
发帖 1357
注册 2006-5-20
状态 离线
|
『第
11 楼』:
用WGET 或者CURL
支持断点续传,用起来比较放心
|

有问题请发论坛或者自行搜索,再短消息问我的统统是SB |
|
2009-4-16 12:32 |
|
|
Climbing
铂金会员
       网络独行侠
积分 6962
发帖 2753
注册 2003-4-16 来自 河北保定
状态 离线
|
『第
12 楼』:
@ 11# yishanju:
拜托回答问题要看清题意,人家是上传文件,而wget和curl都是下载文件。
回复楼主的新问题:你可以改下批处理,原来的批处理是检测失败的,发现的保留。你可以改成检测成功的,将成功的移过去,这样留下的就是失败的了。
|

偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“ 这个帖子”和“ 这个帖子”并努力遵守,如果可能,请告诉更多的人!
|
|
2009-4-16 13:49 |
|
|
oozic
初级用户
 
积分 35
发帖 25
注册 2007-11-28
状态 离线
|
『第
13 楼』:
Originally posted by Climbing at 2009-4-16 01:49 PM:
拜托回答问题要看清题意,人家是上传文件,而wget和curl都是下载文件。
回复楼主的新问题:你可以改下批处理,原来的批处理是检测失败的,发现 ... 一语惊醒梦中人啊。谢谢。
^_^
|
|
2009-4-16 22:22 |
|