刪除超過1年數據完整python腳本:
vi aa.py
#!/usr/bin/python
import os
import datetime
import shutil
dir="/aa"
now = datetime.datetime.now()
delta = datetime.timedelta(days=365)
os.remove("/log/110Hudrm/gmss.txt")
os.mknod("/log/110Hudrm/gmss.txt")
os.chdir(dir)
str1 = "_W"
for root,dirs,files in os.walk(dir):
for f in dirs:
if str1 in f:
mtime = datetime.datetime.fromtimestamp(os.path.getmtime(os.path.join(root,f)))
if mtime < (now - delta):
d = os.path.join(root,f)
p = open('/log/110Hudrm/gmss.txt','a')
p.write(d+"\n")
p.close()
size = 0
c = open('/log/110Hudrm/gmss.txt','r')
for i in c.readlines():
for root,dirs,files in os.walk(i.strip()):
size += sum(os.path.getsize(os.path.join(root,fi)) for fi in files)
si = (format((float(size) / 1024 / 1024 / 1024),'.1f'))
e = open('/log/110Hudrm/gmss2.txt','w')
e.write(str(si)+'G')
e.close()
y = []
x = open('/log/110Hudrm/gmss.txt','r')
for n in x.readlines():
y.append(n.strip())
for m in sorted(y,key=len,reverse=True):
shutil.rmtree(m)
os.system('/usr/bin/mail -s "host1(10.0.0.2) aa delete(over 1 years) Size at date +%Y-%m-%d
" [email protected] < /log/110Hudrm/gmss2.txt')
:wq