/etc/cron.daily scripts may not have dots in their name

I just had the problem I'd placed a script into /etc/cron.daily on my Debian Lenny system but it wasn't getting run (or at least it didn't seem so). Two things I learned:

  1. Execute the following to see which scripts would get run:

    run-parts --test /etc/cron.daily
    
  2. In my case, the reason the script was never executed was that I called it xyz.sh as it was a shell script; the dot in the filename was the problem. I removed the dot and now it runs.

P.S. I recently created a nerdy privacy-respecting tool called When Will I Run Out Of Money? It's available for free if you want to check it out.

This article is © Adrian Smith.
It was originally published on 18 Apr 2010
More on: Linux & UNIX | FAIL