您好,登錄后才能下訂單哦!
因為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 message
ftp.connect(ftp_server, port, timeout) # connect to FTP server
ftp.login(username, password)
return ftp
def uploadfile_to_FTP():
ftp = ftpconnect()
print ftp.getwelcome() # can display FTP server welcome message.
bufsize = 1024
for 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 server
ftp.set_debuglevel(0) # close debug
fp.close() # close connect
ftp.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":
print_time()
uploadfile_to_FTP()
cleanfile()
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。