26 lines
454 B
Bash
26 lines
454 B
Bash
signals_trap_with_arg() {
|
|
func="$1" ; shift
|
|
for sig ; do
|
|
echo "$func $sig"
|
|
trap "$func $sig" "$sig"
|
|
done
|
|
}
|
|
|
|
signals_wait_forever() {
|
|
while true
|
|
do
|
|
tail -f /dev/null & wait ${!}
|
|
done
|
|
}
|
|
|
|
signal_name_to_number() {
|
|
SIGNAME="$1"
|
|
trap -l | sed -nr "s/.*\b([0-9]+)\) $SIGNAME.*/\1/p"
|
|
}
|
|
|
|
signal_return_val() {
|
|
SIGNAME="$1"
|
|
SIGNUM=$(signal_name_to_number ${SIGNAME})
|
|
echo "128 + $SIGNUM" | bc
|
|
}
|