补丁包生成工具

# -*- coding: gbk -*-
import os
import datetime
import time
import shutil
import tkinter as tk
from tkinter import *
from tkinter import ttk
from tkinter.filedialog import askdirectory
import threading
value1=0
def listdirorfile(dir,dates,dst):
    files=os.listdir(os.chdir(dir))
    for name in files:
        fullname=os.path.join(dir,name)
        if os.path.isdir(fullname):
            listdirorfile(fullname,dates,dst)
        elif os.path.isfile(fullname):
            if datetime.datetime.fromtimestamp(os.path.getmtime(fullname)).strftime("%Y-%m-%d %H:%M:%S")>dates:
                print(name)
                # fullname2=fullname
                # print(fullname2)
                a1=fullname.split(":")[1]
                a2=(a1.split("\\")[1:-1])
                a3=""
                for i in a2:
                    a3 =a3+"\\"+ i
                print(dst+a3)
                if os.path.exists(dst+a3):
                    pass
                else:
                    os.makedirs(dst+a3)
                print(shutil.copy(fullname,dst+a3))

def start_click():
    print(e1.get())
    if e1.get()=="" or e2.get()=="" or datechose.get()=="" or hchose.get()=="" or mchose.get()=="" or schose.get()=="":
        tishi2_.set("源码路径、输出路径、日期不能为空!")
    else:
        tishi_.set("正在打包中......")
        b3.configure(state="disabled")
        win.update_idletasks()

        #listdirorfile(e1.get(), datechose.get()+" "+hchose.get()+":"+mchose.get()+":"+schose.get(), e2.get())
        b3.configure(state="active")
        tishi_.set("打包完成!")
        win.update_idletasks()




def liulan_src_click():
    src_path_=askdirectory()
    src_path.set(src_path_)
    dst_path.set(src_path_+"-patch")
def liulan_dst_click():
    dst_path_=askdirectory()
    dst_path.set(dst_path_)



win=tk.Tk()
src_path=StringVar()
dst_path=StringVar()
tishi_=StringVar()
tishi2_=StringVar()
win.resizable(False,False)
win.title("补丁包生成工具 Create By CZR|2017")
Label(win,text="").grid(row=0)

Label(win,text="源码路径:").grid(row=1)
Label(win,text="输出路径:").grid(row=2)
Label(win,text="      时间:").grid(row=3)
Label(win,textvariable=tishi2_).grid(row=4,column=1,columnspan=4)
l1=Label(win,textvariable=tishi_).grid(row=5,column=1,columnspan=4)e1=Entry(win,width=31,textvariable=src_path)e2=Entry(win,width=31,textvariable=dst_path)

date_var=tk.StringVar()
datechose=ttk.Combobox(win,width=10,textvariable=date_var)
h_var=tk.StringVar()
hchose=ttk.Combobox(win,width=2,textvariable=h_var)
m_var=tk.StringVar()
mchose=ttk.Combobox(win,width=2,textvariable=m_var)
s_var=tk.StringVar()
schose=ttk.Combobox(win,width=2,textvariable=s_var)

e1.grid(row=1,column=1,columnspan=4)
e2.grid(row=2,column=1,columnspan=4)
datechose.grid(row=3,column=1)
hchose.grid(row=3,column=2)
mchose.grid(row=3,column=3)
schose.grid(row=3,column=4)

b0=Button(win,width=10,text=" ")
b1=Button(win,width=10,text="浏览",command=liulan_src_click)
b2=Button(win,width=10,text="浏览",command=liulan_dst_click)
b3=Button(win,width=10,text="开始",command=start_click)


b1.grid(row=1,column=6)
b2.grid(row=2,column=6)
b3.grid(row=3,column=6)


now=datetime.datetime.now()
daysall=[]
hs=[]
ms=[]
ss=[]
for i in range(1,8):
delta = datetime.timedelta(days=i)
#daysall.append((now+delta).strftime("%Y-%m-%d"))
daysall.append((now-delta).strftime("%Y-%m-%d"))
daysall.append(now.strftime("%Y-%m-%d"))
sorts=sorted(daysall)
datechose['values']=sorts
datechose.current(7)
print(sorts)
#小时
for j in range(0,24):
hs.append(j)
hchose['values']=hs
nowh=datetime.datetime.now().strftime("%H")
hchose.current(hs.index(int(nowh)))
#分


for m in range(0,60):
ms.append(m)
mchose['values']=ms
nowm=datetime.datetime.now().strftime("%M")
mchose.current(ms.index(int(nowm)))
#秒
for s in range(0,60):
ss.append(s)
schose['values']=ss
nows=datetime.datetime.now().strftime("%S")
schose.current(ss.index(int(nows)))
win.mainloop()


 下载地址:https://files.cnblogs.com/files/czrwxw/%E8%A1%A5%E4%B8%81%E7%94%9F%E6%88%90%E5%B7%A5%E5%85%B7.zip

posted @ 2017-10-27 15:46  杯中红茶  阅读(363)  评论(0编辑  收藏  举报