我有以下陷阱脚本,但关于它的想法对我来说有点模糊。
#!/bin/bash
for i in {1..64}; do
trap "echo 'signal[$$] Caught signal SIG$(kill -l "$i")($i)'" "$i";
done;
read -s -n1;
答案1
该脚本除了打印它收到的信号外什么也不做。
kill -l "$i"
用名称替换信号编号。
我会把这个脚本改成
#!/bin/bash
echo "My PID is $$"
echo "Send SIGNALS with this command:"
echo " kill -SIG $$"
echo "SIG may be either a signal name or number, see kill -l"
for i in {1..64}; do
trap "echo 'signal[$$] Caught signal SIG$(kill -l "$i")($i)'" "$i";
done;
read -s -n1;