如何将$ 1传入陷阱并发出信号

时间:2015-01-19 14:33:31

标签: bash parameters signals bash-trap

sigusr1() { echo $1;}
trap sigusr1  SIGUSR1

我是个新手!

我的.bash_profile中有上述陷阱和信号代码。要触发sigusr1,我只需在终端中呼叫Kill -SIGUSR1 pid。我用Google搜索了解如何将参数传递给sigusr1但我找不到任何东西,除非我使用它作为陷阱'sigusr1你好'SIGUSR1

但那失败的目的。我想通过终端传递参数。如何通过kill命令传入参数,以便sigusr1函数可以将其回显?

1 个答案:

答案 0 :(得分:0)

要将参数传递给trap调用的函数,请将陷阱调用更改为:

trap 'sigusr1 $(cat ~/sigusr1-args)' SIGUSR1

发送信号如下:

echo arg1 > ~/sigusr1-args;kill -SIGUSR1 PID