为了账号安全,请及时绑定邮箱和手机立即绑定

python脚本之ftp上传日志

标签:
Python

因为ssoc日志巨大,很快就把磁盘占满。需要每天把备份上传到ftp服务器上,所以根据网上的资料,做了个简单的脚本。算是第一次自己拼凑出的脚本。还很简单,特别是把异常处理简化了。因为本身单一,然后把屏幕输出用管道命令》直接写到本地文件,充当日志。很懒的一个版本。还需加工。


1 ftp上传 文件夹里的内容
2 上传后把现有的目录下的文件删除。
简化的好处就是只要遍历文件如果有新文件的就上传。

代码如下:


import ftplib
import os
import shutil
import time

def ftpconnect():
ftp_server = 'x.x.x.x'  # FTP server ip address
username = 'xxxx'
password = 'xxxx'
timeout = 30
port = 21

ftp = ftplib.FTP()ftp.set_debuglevel(2)  # open debug level 2, can display detail messageftp.connect(ftp_server, port, timeout)  # connect to FTP serverftp.login(username, password)return ftp

def uploadfile_to_FTP():
ftp = ftpconnect()
print ftp.getwelcome()  # can display FTP server welcome message.

bufsize = 1024for filename in os.listdir(r"/data/data/event"):    remotepath = "/safe-logs/"+filename    localpath = "/data/data/event/"+filename    fp = open(localpath, 'rb')    ftp.storbinary('STOR ' + remotepath, fp, bufsize)  # start to upload file :local --> FTP serverftp.set_debuglevel(0)  # close debugfp.close()  # close connectftp.quit()  # quit FTP server

def cleanfile():
shutil.rmtree("/data/data/event")
os.mkdir("/data/data/event")

def print_time():
localtime=time.asctime(time.localtime(time.time()))
print '\n'
print "localtime:",localtime

if name == "main":

downloadfile_from_FTP()

print_time()uploadfile_to_FTP()cleanfile()

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消