`
feitu_jeff
  • 浏览: 42741 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

shell脚本中 判断FTP上传文件是否备份成功

阅读更多

shell脚本中 需要判断FTP上传文件是否上传成功,就需要shell进行交互来进行验证。有2种方案可以解决

1. 通过expect进行交互,需要linux下安装expect。实例网上自行搜索,后面上传一附件(ftp.sh)自行查看(代码好像来源于chinaunix.net,具体忘记了)。

2. shell脚本获取ftp上传后的日志,然根据日志判断是否存在上传,详细讲这点

a. 

 

# ftp执行返回信息输出到文件中,然后那获取文件中信息判断
#!/bin/bash
#$1 host $2 user $3 password $4 local file  $5 remote file 
#法1
ftp -in $1 1>log.txt <<!!
user $2 $3
bin
prompt
put $4 $5  
dir $5
close
bye
!!

#法2
echo "open $1
user $2 $3
bin
prompt
put $4 $5
dir $5
close
bye"|1>log.txt ftp -in 
# 然后分析log.txt  分析文件或者 文件大小对比均行

 b.  获取log.txt文件FTP上传文件大小

 

 

#$filename ftp服务器名称
RemoteFileSize=`grep $filename log.txt | awk '{print $5}'`

 c.  判断本地文件大小

 

#$files 本地文件路径
LocalFileSize=`stat $files | awk '/Size/ {print $2}'`

 d. 判断RemoteFileSize与LocalFileSize是否一致

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics