#!/usr/bin/env python3 import datetime import subprocess from os import path import os import time import glob import shutil initial_dir = os.getcwd() for year in range(2011, 2017): my_path = path.join(initial_dir, str(year)) os.chdir(my_path) # The first day of the year is the base, so there is nothing to # concatenate, we just copy it: for src in glob.iglob(f"{year}_01/{year}_01_01/*"): shutil.copy(src, os.curdir) my_date = datetime.date(year, 1, 2) final_date = datetime.date(year, 12, 31) t0 = time.perf_counter() with open("perf_report.csv", "w") as perf_report: perf_report.write("elapsed time, in s\n") while my_date <= final_date: my_dir = my_date.strftime("%Y_%m/%Y_%m_%d") for filename in ["extremum", "max_speed_contour", "outermost_contour"]: from_file = path.join(my_dir, filename) for command in ["dbfcat", "shpcat"]: subprocess.run([command, from_file, filename], check = True) t1 = time.perf_counter() perf_report.write(str(t1 - t0) + "\n") t0 = t1 my_date += datetime.timedelta(1)