#!/usr/bin/env python # encoding: utf-8 import glob import subprocess import sys import os from datetime import datetime, timedelta TAG = sys.argv[1] REMOTE = 'peate02::allData/ingest/cris/npp/%(YEAR)s/%(DOY)s/%(TAG)s' LOCAL = '/delta/instruments/CrIS/%(YEAR)s/%(DOY)s/%(TAG)s' YEARS=[2011, 2012] MONTHS=[2,5,8,11] # ------------------------------- def daterange(start_date, end_date): for n in range(int ((end_date - start_date).days)): yield start_date + timedelta(n) # ------------------------------- for YEAR in YEARS: for MONTH in MONTHS: start = datetime(YEAR, MONTH, 1) end = datetime(YEAR, MONTH+1, 1) # FIXME: things fall apart if month+1 = 13 for DAY in daterange(start, end): DOY = DAY.timetuple().tm_yday FMTDICT = {'YEAR' : str(YEAR), 'MONTH' : str(MONTH), 'DOY' : "%03d" % (DOY), 'TAG' : str(TAG)} REMOTE_FMT = REMOTE % FMTDICT LOCAL_FMT = LOCAL % FMTDICT cmd = 'mkdir -p %s;\n' % (LOCAL_FMT) cmd+= 'rsync -v --copy-links %s/* %s/.' % (REMOTE_FMT, LOCAL_FMT) print cmd subprocess.call(cmd, shell=True)