本人空间所有文章如没有声明转载,则均为本人原创.
comsyschen@163.com
使用脚本检查FTP数据
上一篇 / 下一篇 2008-02-02 15:21:05 / 个人分类:windows批处理
本人每天都要检查FTP上的文件是否完整,所以决定编一个BAT帮我自动完成。
LJN9x3y0IXPUB技术博客 Z%e.h&E`0\.S_!P
过程是这样:每天,我们有多个地区通过FTP把其他地方的重要数据传回到公司FTP服务器上存档,每个小时1个文件。文件存放方式为按地区保存到不同的目录;文件名称为sm_2007-08-01-1.txt .....sm_2007-08-01-24.txt共24个文件,如/d1/sm_20007-08-01-1.txt 表示d1地区2007-08-01第一个文件。IXPUB技术博客:zgp&S#WG[VN
IXPUB技术博客x7E1y"@[
bat文件就是自动执行检查任务,看是否所有的文件都有,并输出检查结果。
NQ\,k,et!O ?5cI0
-s,S)\QI qqwSA0本bat批处理文件涉及到for循环,ftp自动运行。
-^'`.ZTnO eR0IXPUB技术博客^t eF5L U
=============================
ce@mN9pi2?#A4C0checkftp.bat 主程序
0m:_+mf)xu0IXPUB技术博客g_(Wu+C"n
echo >result.txtIXPUB技术博客&rL)A4ux N5M
.P-ZFU_d!O/g+f0if "%1"=="" goto tishiIXPUB技术博客0| QQ5x s1n1g
IXPUB技术博客L/z3?I ?Z
IXPUB技术博客nL.lZZu%pY9i7O
@echo offIXPUB技术博客aL,Q;g9YJr
for %%f in (d1,d2,d3,d4,d5,d6,d7,d8) do call ftp0.bat %%f %%1
1T%\z(Q6Tw+Ps0
~(u*Rc0ZZy(l(Md0clsIXPUB技术博客/kW4n%s#e1iQ1Z
IXPUB技术博客3ynW'YTy-kk$u jD
@echo offIXPUB技术博客"L#og%ed{*_C"d%r
echo ==============================================IXPUB技术博客R!fr{j!X_#?/Y
echo 数据回传检查结果:%1:IXPUB技术博客l{3J2Up*I.x
echo ==============================================
.II*CW!b;z2C1y)cs0
H%CNI,cx[,Ki"z0type result.txt
g-q pa-l%pe0
;|6l#]kd0echo ==============================================IXPUB技术博客7D \"bp{%c(T
echo 数据回传检查结果:%1:
D ]+O*?t'j0echo ==============================================IXPUB技术博客6BcQ9N1I8d
z0?i5e9d?0goto end
(s ?)ZG8Y)EL6I[;D+f0IXPUB技术博客1V8@Hs&rX f[5eS*u
:tishi
kB7\ j8L~C0cls
vvX-O-a V$v0@echo offIXPUB技术博客:_] y+?f:xL+K
echo usage: %0 yyyy-mm-ddIXPUB技术博客`W&Sb}dkN
echo sample:%0 2007-05-11
F(r&ZUAui`1\0goto end
r5n7Q0[?-h%b(u0
n8@"^x8dm0
K%m!W.ArS0:endIXPUB技术博客w |/N.^!C8xjG
@echo on
'Sd)rc+{)G0IXPUB技术博客3]1L]%syo3X
xkcMV&Q7eq$n0========================================
-V Q:~({Ntq k0ftp0.bat
n%Ro@)s'\Q]o0IXPUB技术博客H(w:kaf7L
IXPUB技术博客zS5w/t"q6O~
if "%2"=="" goto tishiIXPUB技术博客$YAL(lv#F
@echo open 192.168.11.4 >ftpcmd.txt
AzC4Yp!VI0@echo user>>ftpcmd.txt
9Q XK&o&A ]8P5}D s/B0@echo pass>>ftpcmd.txt
t-iVy-{5i0@echo cd %1>>ftpcmd.txt
j!F{*W.q0@echo ls sm_%2* list.txt>>ftpcmd.txtIXPUB技术博客jH z%H+ni `]2mR+j
@echo
J5v,r#m5_0Xp[0@echo bye>>ftpcmd.txtIXPUB技术博客;[0?-U%yK!hl$r a
IXPUB技术博客ya_s$o;G d
IXPUB技术博客Yi1lw!m n!M
@echo offIXPUB技术博客i,gsn+@J
ftp -s:ftpcmd.txt > 1.txt
,k9S9o8L_ro0del ftpcmd.txt
J*u4mV'z!t0del 1.txtIXPUB技术博客mlR%|M^WR2i
b3o+VuG*a5q0IXPUB技术博客xWwObQE
find "%2" list.txt /c | find "24" /c
9q6Y*M I.k0
8XP2C(g{u#G0goto answer%errorlevel%IXPUB技术博客BD/O,pGQc
:answer0IXPUB技术博客 ck!p8[){\7F D
IXPUB技术博客Pq|&X^(Kcr }
@echo OK! %1 %2 数据完整! >>result.txtIXPUB技术博客e V&T)_ y[;h'M
goto end1IXPUB技术博客2g(? C nD].t
`6k*{N*@$p9l1x0IXPUB技术博客l1F"h H @
:answer1IXPUB技术博客!GB5u%a.eh~D
clsIXPUB技术博客?4C5m DS n7{E
@echo ERROR: %1 %2 数据不完整 具体参见result.txt >>result.txt
0V ^kETh0type list.txt >>result.txtIXPUB技术博客+[x[yd mFk
goto end1
"n-p@7TX3tc4t0IXPUB技术博客}2]k(D1SD
:end1
2}9X.|:X H_Y M"F6P0goto endIXPUB技术博客 Z5LHk6Q)G
bk5X+?(?.u2B#H0:tishi
LJN9x3y0IXPUB技术博客 Z%e.h&E`0\.S_!P
过程是这样:每天,我们有多个地区通过FTP把其他地方的重要数据传回到公司FTP服务器上存档,每个小时1个文件。文件存放方式为按地区保存到不同的目录;文件名称为sm_2007-08-01-1.txt .....sm_2007-08-01-24.txt共24个文件,如/d1/sm_20007-08-01-1.txt 表示d1地区2007-08-01第一个文件。IXPUB技术博客:zgp&S#WG[VN
IXPUB技术博客x7E1y"@[
bat文件就是自动执行检查任务,看是否所有的文件都有,并输出检查结果。
NQ\,k,et!O ?5cI0
-s,S)\QI qqwSA0本bat批处理文件涉及到for循环,ftp自动运行。
-^'`.ZTnO eR0IXPUB技术博客^t eF5L U
=============================
ce@mN9pi2?#A4C0checkftp.bat 主程序
0m:_+mf)xu0IXPUB技术博客g_(Wu+C"n
echo >result.txtIXPUB技术博客&rL)A4ux N5M
.P-ZFU_d!O/g+f0if "%1"=="" goto tishiIXPUB技术博客0| QQ5x s1n1g
IXPUB技术博客L/z3?I ?Z
IXPUB技术博客nL.lZZu%pY9i7O
@echo offIXPUB技术博客aL,Q;g9YJr
for %%f in (d1,d2,d3,d4,d5,d6,d7,d8) do call ftp0.bat %%f %%1
1T%\z(Q6Tw+Ps0
~(u*Rc0ZZy(l(Md0clsIXPUB技术博客/kW4n%s#e1iQ1Z
IXPUB技术博客3ynW'YTy-kk$u jD
@echo offIXPUB技术博客"L#og%ed{*_C"d%r
echo ==============================================IXPUB技术博客R!fr{j!X_#?/Y
echo 数据回传检查结果:%1:IXPUB技术博客l{3J2Up*I.x
echo ==============================================
.II*CW!b;z2C1y)cs0
H%CNI,cx[,Ki"z0type result.txt
g-q pa-l%pe0
;|6l#]kd0echo ==============================================IXPUB技术博客7D \"bp{%c(T
echo 数据回传检查结果:%1:
D ]+O*?t'j0echo ==============================================IXPUB技术博客6BcQ9N1I8d
z0?i5e9d?0goto end
(s ?)ZG8Y)EL6I[;D+f0IXPUB技术博客1V8@Hs&rX f[5eS*u
:tishi
kB7\ j8L~C0cls
vvX-O-a V$v0@echo offIXPUB技术博客:_] y+?f:xL+K
echo usage: %0 yyyy-mm-ddIXPUB技术博客`W&Sb}dkN
echo sample:%0 2007-05-11
F(r&ZUAui`1\0goto end
r5n7Q0[?-h%b(u0
n8@"^x8dm0
K%m!W.ArS0:endIXPUB技术博客w |/N.^!C8xjG
@echo on
'Sd)rc+{)G0IXPUB技术博客3]1L]%syo3X
xkcMV&Q7eq$n0========================================
-V Q:~({Ntq k0ftp0.bat
n%Ro@)s'\Q]o0IXPUB技术博客H(w:kaf7L
IXPUB技术博客zS5w/t"q6O~
if "%2"=="" goto tishiIXPUB技术博客$YAL(lv#F
@echo open 192.168.11.4 >ftpcmd.txt
AzC4Yp!VI0@echo user>>ftpcmd.txt
9Q XK&o&A ]8P5}D s/B0@echo pass>>ftpcmd.txt
t-iVy-{5i0@echo cd %1>>ftpcmd.txt
j!F{*W.q0@echo ls sm_%2* list.txt>>ftpcmd.txtIXPUB技术博客jH z%H+ni `]2mR+j
@echo
J5v,r#m5_0Xp[0@echo bye>>ftpcmd.txtIXPUB技术博客;[0?-U%yK!hl$r a
IXPUB技术博客ya_s$o;G d
IXPUB技术博客Yi1lw!m n!M
@echo offIXPUB技术博客i,gsn+@J
ftp -s:ftpcmd.txt > 1.txt
,k9S9o8L_ro0del ftpcmd.txt
J*u4mV'z!t0del 1.txtIXPUB技术博客mlR%|M^WR2i
b3o+VuG*a5q0IXPUB技术博客xWwObQE
find "%2" list.txt /c | find "24" /c
9q6Y*M I.k0
8XP2C(g{u#G0goto answer%errorlevel%IXPUB技术博客BD/O,pGQc
:answer0IXPUB技术博客 ck!p8[){\7F D
IXPUB技术博客Pq|&X^(Kcr }
@echo OK! %1 %2 数据完整! >>result.txtIXPUB技术博客e V&T)_ y[;h'M
goto end1IXPUB技术博客2g(? C nD].t
`6k*{N*@$p9l1x0IXPUB技术博客l1F"h H @
:answer1IXPUB技术博客!GB5u%a.eh~D
clsIXPUB技术博客?4C5m DS n7{E
@echo ERROR: %1 %2 数据不完整 具体参见result.txt >>result.txt
0V ^kETh0type list.txt >>result.txtIXPUB技术博客+[x[yd mFk
goto end1
"n-p@7TX3tc4t0IXPUB技术博客}2]k(D1SD
:end1
2}9X.|:X H_Y M"F6P0goto endIXPUB技术博客 Z5LHk6Q)G
bk5X+?(?.u2B#H0:tishi