-#!/bin/sh
-export ACTION=add
-#export ACTION=remove
+#! /bin/sh
+#
+# test.block - run udev(8) on each block device in /sys/block
-export DEVPATH=/block/hda
+if [ $# = "0" ] ; then
+ echo
+ echo "usage: $0 <action>"
+ echo "where <action> is \"add\" or \"remove\""
+ echo
+ exit 1
+fi
+SYSFSDIR=/sys # change this for a nonstand sysfs mount point
+BIN=./udev # location of your udev binary
+export ACTION=$1 # 'add' or 'remove'
-./udev block
+for i in ${SYSFSDIR}/block/*; do
+ # add each drive
+ export DEVPATH="/"`echo $i | cut --delimiter='/' --fields=3-`
+ $BIN block
+
+ # add each partition, on each device
+ for j in $i/*; do
+ if [ -f $j/dev ]; then
+ export DEVPATH="/"`echo $j | \
+ cut --delimiter='/' --fields=3-`
+ $BIN block
+ fi
+ done
+done