#!/usr/bin/env python

import schedule
import time
import subprocess
import argparse

def job():
  subprocess.run(ARGS.command.split(" "))

parser = argparse.ArgumentParser(description="Run a task every night at a certain time.")
parser.add_argument("command", type=str, help="The shell command to run.")
parser.add_argument("--when", type=str, default="3:00", help="A time to run the command. (default: 3:00)")
ARGS = parser.parse_args()

schedule.every().day.at(ARGS.when).do(job)

while True:
  schedule.run_pending()
  time.sleep(1)
