#!/bin/sh # run-parts - concept taken from Debian # # modified for PLD by Pawel Wilk # # NOTE: # 1.) run-parts is now able to get arguments! # 2.) relative pathname of the invoked directory can be # obtained by reading RUNPARTS_DIR env. variable # 3.) absolute pathname of the invoked directory can be # obtained by reading RUNPARTS_ADIR env. variable # # keep going when something fails set +e # std checks if [ $# -lt 1 ]; then echo "Usage: run-parts " exit 1 fi if [ ! -d $1 ]; then echo "Is not a directory: $1" echo "Usage: run-parts " exit 1 fi # assign passed dir name RUNPARTS_DIR=$1 # assign absolute dir name olddir=`pwd` cd $RUNPARTS_DIR RUNPARTS_ADIR=`pwd` cd $olddir unset olddir # export directories for our descendants export RUNPARTS_ADIR RUNPARTS_DIR # shift args shift # Ignore *~ and *, scripts for i in $1/*[^~,] ; do [ -d $i ] && continue # Don't run *.{rpmsave,rpmorig,rpmnew,swp} scripts [ "${i%.rpmsave}" != "${i}" ] && continue [ "${i%.rpmorig}" != "${i}" ] && continue [ "${i%.rpmnew}" != "${i}" ] && continue [ "${i%.swp}" != "${i}" ] && continue [ "${i%,v}" != "${i}" ] && continue if [ -x $i ]; then $i $* 2>&1 | awk -v "progname=$i" \ 'progname { print progname ":\n" progname=""; } { print; }' fi done exit 0