≡ Menu

How to: Run All Shell / Perl / Python Scripts in a Directory

I've directory called /home/vivek/scripts/daily with over 25 perl / shell / python scripts for managing daily tasks. One day for some weird reason my crond died and I did not noticed the incident for 2 days.

Now crond is started and I'd like to run all those scripts. Here is a quick for loop running all scripts in a directory called ~/scripts/daily/:

for s in ~/scripts/daily/*;do [ -x $s ] && $s || : ;done

Above script will run each and every executable script it finds in a directory.

Update: As pointed out by jeff (see below), you can use run-parts shell script for the same purpose:
$ run-parts ~/scripts/daily/*

Tweet itFacebook itGoogle+ itPDF itFound an error/typo on this page?

Comments on this entry are closed.

  • Jeff Schroeder October 12, 2007, 4:38 pm

    Or a *much* easier way:
    run-parts ~/scripts/daily/

    Your kung foo is good, but you will never beat the Tekken fighters.

  • nixCraft October 12, 2007, 6:25 pm

    Thanks for the tip, post has been updated.

    >Your kung foo is good, but you will never beat the Tekken fighters.
    Heh .. Gotta love Tekken fighters!