处理FTP上传成功推理
#登录FTPserver获取指定文件
#$1:server住址
#$2:帐户
#$3:password
#$4:文件路径名
#$5:本地文件路径名
#$6:本地文件名
#比量ftp上传结果:
#获取上传后的远程文件大小重定向在本地文件tmp,与本地文件大小比較,同样为上传成功,最后删除本地记录tmp;
#推断外部调用函数(如system)运行结果:
#运行成功返回为上传的结果:0,运行失败为返回脚本内运行结果或系统调用结果:非0,避免了外部调用一直返回成功:0;
#日志改动:
#上传后紧接着写日志(追加写),另外ftp日志大于100M则清空。
########################################################################
get_file()
{
#echo "$1 $2 $3 $4 $5 $6"
GF_HOST=$1
GF_USER=$2
GF_PASS=$3
GF_DATPATH=$4
GF_LOCPATH=$5
GF_SRCFILE=$6
#上传文件
ftp -in $GF_HOST >>ftp.log<<- EOF
quote USER $GF_USER
quote PASS $GF_PASS
bin
cd $GF_DATPATH
lcd $GF_LOCPATH
mput $GF_SRCFILE
dir $GF_DATPATH/$GF_SRCFILE tmp
quit
EOF
FTPSIZE=`cat $GF_LOCPATH/tmp |sed -n '/'$GF_SRCFILE'/p' |awk '{print $5}'`
LOCALSIZE=`ls -l $GF_LOCPATH/$GF_SRCFILE |awk '{print $5}'`
#echo $FTPSIZE
#echo $LOCALSIZE
if [ "$FTPSIZE" != "" ] && [ "$FTPSIZE" == "$LOCALSIZE" ]; then
RETCODE=0
else
RETCODE=125
fi
rm -rf $GF_LOCPATH/tmp
1> /dev/null
2> /dev/null
#return $?
return $RETCODE
}
#########################################################################################################################
get_log_line()
{
GLL_TIME=`date "+%Y-%m-%d %X"`
#GLL_PATH=`pwd` '/' `$FILENAME`
RESULT=$1
if [ "$RESULT" == 0 ]
then
STR_RESULT="成功!"
else
STR_RESULT="失败!"
fi
echo "$GLL_TIME| 上传 | 本地文件:$2: $3 | 到 | 目标主机:$4:$5 | $STR_RESULT" >>ftp.log
}
clear_ftplog()
{
FTPLOGSIZE=`du -m ftp.log |awk '{print $1}' ||cut -f 1 -d "M" | cut -f 1 -d "."`
if [ $FTPLOGSIZE -gt 100 ]; then
echo "">ftp.log
fi
}
#####################################################################################################################
clear_ftplog "100"
HOST=""
USER=""
PASS=""
DATPATH=""
LOCPATH="l"
SRCFILE=""
get_file "$HOST" "$USER" "$PASS" "$DATPATH" "$LOCPATH" "$SRCFILE"
get_log_line "$?" "$LOCPATH" "$SRCFILE" "$HOST" "$DATPATH"
版权声明:本文博主原创文章。博客,未经同意不得转载。
处理FTP上传成功推理相关推荐
- FTP上传成功之后却查找不到文件
FTP上传成功之后却查找不到文件 在测试了好几次之后,日志一直提示文件上传ftp成功,但进入ftp指定目录后,就查找不到,当手动上传本地或创建文件之后竟报了553 Could not create f ...
- Jenkins使用FTP上传文件报错问题处理
Jenkins带有Publish over FTP插件,安装后并使用它就能实现FTP上传,可以用于构建后的发包操作.我们在系统管理中配置好FTP Servers后,并测试连接通过,按理在Job配置中用 ...
- ftp 文件夹 上传到服务器,ftp上传文件夹到服务器 远程路径
ftp上传文件夹到服务器 远程路径 内容精选 换一换 WinSCP工具可以实现在本地与远程计算机之间安全地复制文件.与使用FTP上传代码相比,通过 WinSCP 可以直接使用服务器账户密码访问服务器, ...
- 上传到服务器的文件没了,ftp上传到服务器没有文件
ftp上传到服务器没有文件 内容精选 换一换 工具中所有涉及上传文件功能的,如果需要上传的文件大于500MB或者解压后大于1GB,需要手动将文件上传至服务器,其他情况可通过Web界面上传功能上传. 通 ...
- 高可用的Spring FTP上传下载工具类(已解决上传过程常见问题)
点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 作者:宇的季节 cnblogs.com/chenkeyu/p/80 ...
- 关于FTP上传方法 (by Liang)
什么是FTP呢?FTP 是 TCP/IP 协议组中的协议之一,是英文File Transfer Protocol的缩写.该协议是Internet文件传送的基础,它由一系列规格说明文档组成,目标是提高文 ...
- ftp上传当天文件的方法_ftp自动上传文件,ftp自动上传文件的配置方法及使用教程...
IIS7服务器管理工具具备所有服务器管理工具的功能,比如批量管理.同时它还有很多的自主研发功能.比如同步操作.到期提醒.数据安全和定期执行.当然适用的系统也有Windows和liunx操作系统.还支持 ...
- php 如何做ftp传输,php如何实现ftp上传
php实现ftp上传的方法:首先通过"ftp_connect"函数连接FTP服务器 :然后使用username和password登录:最后通过"ftp_put()&quo ...
- ossweb上传 php_php - ftp 上传文件到远程服务器
ccentos7服务器 ======================== 一.安装vsftpd及ftp命令 yum install vsftpd -y yum install ftp -y 二.vsf ...
最新文章
- SAP PM入门系列30 - IW39 Display Orders
- 一个超轻量级工作流引擎:Workflow-Core
- android dp转px的公式_公式px到dp,dp到px android
- OpenCV成长之路:直线、轮廓的提取与描述
- 20万DBA最关注的11个问题
- 什么是Bootstrap?
- git客户端下载地址
- Python字典集合数据结构深入理解
- SplitContainer控件设置固定比例
- word-单独设置某一页的页眉或页脚
- 漫谈核心能力(2) -- 知错能改,善莫大焉
- 360°全景影像移动端类库--PanoramaGL
- Python制作微信自动回复机器人,打游戏时自动回复女朋友消息
- 将一个多段线按一些点分割成一个或多个线段
- 高颜值时尚小巧蓝牙耳机推荐,女友生日过节最强送礼装备
- 2022-2027年中国煤制尿素行业市场全景评估及发展战略规划报告
- STM32F407——RC522(模拟SPI)
- 操作系统入门详解以及Linux介绍
- Android通讯录开发之获取运营商号码段(移动、联通,微信小程序的事件处理
- OpenGL 纹理本质
热门文章
- 中国慕课java_回收的吸油毡通常应放置一边以备再次使用。
- PHP教程 数据库和MySQL,PHP与MYSQL数据库连接教程分享
- mysql的ddl的语句有_Mysql操作之部分DDL语句
- 接收不到其他机器发来的报文_TCP/IP报文格式,康康就知道了
- python如何访问对象的属性_Python:从存储在字典中的对象访问对象属性
- 数据算法之二叉树查找(BinaryTreeL Search)的Java实现
- Excel计数(count)可视化
- explain的用法_这次是真拯救了我,MySQL索引优化,explain讲得非常清楚了
- python 如何做密码对话框_Python GUI教程(八):在主窗口中调用对话框
- 华为手机设置页面黑色_华为手机设置里面的这些功能你都知道吗?