- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
#! /usr/bin/python3.1
import tarfile, os, datetime, time
tudate = datetime.datetime.now()
tud_date = list(tudate.timetuple())
day = tud_date[2]; month = tud_date[1]; year = tud_date[0]; dyear = tud_date[7]
tar_pwd = '/home/fess/Desktop/Server/arch/%d.%d.%d.tar.gz' % (day,month,year)
pwd_bases = '/home/fess/Desktop/Server/arch'; archives = os.listdir(pwd_bases) # получаем список всех файлов в дирректории
os.chdir(pwd_bases) # move arround the directory with the bases
if os.path.exists(tar_pwd): pass # если архив с именем сегоднешней даты есть в папке, то ничего не делает
else: # в противном случае создает архив
tar = tarfile.open(tar_pwd,'w:gz')
tar.add('/home/fess/Desktop/Server/base/','bases')
tar.close()
for archive in archives: # Проверка каждого архива в папке с архивами
stf = os.stat(archive); dayy = time.localtime(stf.st_mtime).tm_yday; m = dyear-dayy # узнаем дату создания арх и узнаем сколько ему дней (m)
if m >= 50: # если архиву больше или 50 дней
os.remove(archive); print(archive,'was removed')# тогда удаляем архив которому больше 50 дней
if dyear < dayy: # Если сегодняшний день меньше чем дата создания файла(т.е. наступил новый год)
os.remove(archive); print(archive,'was removed')# удалить 49 оставшихся архивов с прошлого года
Сразу плюс.
За двоеточием должно быть чисто.
С Новым годом!