python 實現(xiàn)保存最新的三份文件,其余的都刪掉
更新時間:2019年12月22日 09:06:20 作者:sxf_0123
今天小編就為大家分享一篇python 實現(xiàn)保存最新的三份文件,其余的都刪掉,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
我就廢話不多說了,直接上代碼吧!
"""
對于每天存儲文件,文件數(shù)量過多,占用空間
采用保存最新的三個文件
"""
from airflow import DAG
from airflow.operators.python_operator import PythonOperator
from airflow.models import Variable
from sctetl.airflow.utils import dateutils
from datetime import datetime,timedelta
import logging
import os
import shutil
"""
base_dir = "/data"
data_dir = "/gather"
"gather下邊存在不同的文件夾"
"/data/gather/test"
"test路徑下有以下文件夾"
"20180812、20180813、20180814、20180815、20180816"
"""
base_dir = Variable.get("base_dir")
data_dir = Variable.get("data_dir")
keep = 3
default_arg = {
"owner":"airflow",
"depends_on_past":False,
"start_date":dateutils.get_start_date_local(2018,8,27,18,5),
"email":[''],
"email_on_failure":False,
"email_on_retry":False,
"retries":1,
"retry_delay":timedelta(minutes=5)
}
dag = DAG(dag_id="keep_three_day",default_args=default_arg,schedule_interval=dateutils.get_schedule_interval_local(18,5))
def keep_three_day():
path = os.path.join(base_dir, data_dir)
date_cates = os.listdir(path)
for cate in date_cates:
p = os.path.join(base_dir, data_dir, cate)
if os.path.isdir(p):
dir_names = os.listdir(p)
dir_names.sort()
for i in dir_names[:-keep]:
logging.info("刪除目錄 {path}".format(path=os.path.join(p, i)))
shutil.rmtree(os.path.join(p, i))
with dag:
keep_three_file = PythonOperator(task_id="keep_three_file",python_callable=keep_three_day(),dag=dag)
keep_three_file
以上這篇python 實現(xiàn)保存最新的三份文件,其余的都刪掉就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python數(shù)據(jù)結(jié)構(gòu)之樹的全面解讀
數(shù)據(jù)結(jié)構(gòu)中有很多樹的結(jié)構(gòu),其中包括二叉樹、二叉搜索樹、2-3樹、紅黑樹等等。本文中對數(shù)據(jù)結(jié)構(gòu)中常見的樹邏輯結(jié)構(gòu)和存儲結(jié)構(gòu)進(jìn)行了匯總,不求嚴(yán)格精準(zhǔn),但求簡單易懂2021-11-11
Python異步發(fā)送日志到遠(yuǎn)程服務(wù)器詳情
這篇文章主要介紹了Python異步發(fā)送日志到遠(yuǎn)程服務(wù)器詳情,文章通過簡單輸出到cmd和文件中的代碼展開詳情,需要的朋友可以參考一下2022-07-07
python selenium爬取斗魚所有直播房間信息過程詳解
這篇文章主要介紹了python selenium爬取斗魚所有直播房間信息過程詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-08-08

