中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python 實現保存最新的三份文件,其余的都刪掉

發布時間:2020-09-18 20:06:13 來源:腳本之家 閱讀:93 作者:sxf_0123 欄目:開發技術

我就廢話不多說了,直接上代碼吧!

"""
對于每天存儲文件,文件數量過多,占用空間
采用保存最新的三個文件
"""
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 實現保存最新的三份文件,其余的都刪掉就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

原平市| 宜君县| 宁都县| 太原市| 安庆市| 高尔夫| 西乡县| 竹山县| 松江区| 塔城市| 武宣县| 平潭县| 盐津县| 晋江市| 那坡县| 隆化县| 沅江市| 水富县| 景宁| 林甸县| 沈丘县| 宕昌县| 西乌珠穆沁旗| 万山特区| 洛川县| 弋阳县| 新昌县| 鄄城县| 汨罗市| 麻城市| 龙口市| 江都市| 镇沅| 小金县| 新乡县| 潜山县| 大城县| 博罗县| 琼中| 庆云县| 宣威市|