python備份文件(簡易)


步驟邏輯

要備份的文件夾:source = ["/opt/containerd"]

 

保存備份信息的文件夾 targz_dir = "/home/backup"

 

文件夾名(以當天日期為) day_dir = targz_dir +time.strftime('%Y%m%d')

 

文件名(當時時間為)  filename = time.strftime('%H%M%S')

 

檢查文件夾是否存在 os.path.exist(day_dir)

 

文件夾路徑 需要壓縮 zip_dir = day_dir + os.sep +filename +'.zip'    # os.sep  兼容Windows平台斜杠 os.sep = '\\'

 

文件壓縮命令  command_shell = "zip -qr" +"zip_dir" + ' '.jion(source)

代碼實現

 

source = ["/home/yjc/linux"]
targz_dir = "hoem/backup"
day_dir = targz_dir +time.strftime('%Y%m%d')
filename = time.strftime('%H%M%S')
zip_dir = day_dir +os.sep + filename +'.zip'
command_shell= "zip -qr" + zip_dir + ''+' '.join(source) 

if not  os.path.exists(day_dir):    # 判斷備份目錄是否存在,如果不存在則創建
    os.mkdir(day_dir)
if os.system(command_shell) == 0:
    print("備份成功")
else:
    print("備份失敗")

 

簡易圖形界面

def bakcup():
    global entry_source
    global entry_tagz_dir
    source= entry_source.get()
    targz_dir=entry_tagz_dir.get()
    day_dir = targz_dir +time.strftime('%Y%m%d')
    filename = time.strftime('%H%M%S')
    zip_dir = day_dir +os.sep + filename +'.zip'
    command_shell= "zip -qr" + zip_dir + ''+' '.join(source)

    if not  os.path.exists(day_dir):    # 判斷備份目錄是否存在,如果不存在則創建
        os.mkdir(day_dir)
    if os.system(command_shell) == 0:
        print("備份成功")
    else:
        print("備份失敗")
#編寫界面布局
root = tkinter.Tk()
root.title('Backup')
root.geometry("2000x2000")

#第一行的兩個控件

dir_source = tkinter.Label(root,text='Source')
dir_source.grid(row=0,column=0)
entry_source = tkinter.Entry(root)
entry_source.grid(row=0,column=1)

# 第二行控件
target_dir = tkinter.Label(root,text='Target')
target_dir.grid(row=1,column=0)
entry_tagz_dir=tkinter.Entry(root)
entry_tagz_dir.grid(row=1,column=1)

#第三行控件
bak=tkinter.Button(root,text='Backup')
bak.grid(row=3,column=0)
bak["command"] = bakcup

#界面開始
root.mainloop()

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM