在sh脚本中,获取后台进程的pid

Fra*_*ger 3 linux bash

是否可以在以下bash脚本中知道iwevent进程的pid:

#!/bin/sh
( iwevent | logger -t IWEVENT ) &
echo the pid is: ???
Run Code Online (Sandbox Code Playgroud)

请注意,iwevent运行直到ctrl-c信号.

仅供参考.我在/ etc/network/interfaces"up"语句中运行此脚本,我想在相关的"down"语句中终止正在运行的iwevent进程.我的目标是记录无线事件.

Rom*_*aka 6

像这样的东西应该做的伎俩:

#!/bin/sh
( { iwevent & printf "The pid is %s\n" $! >&3; } | logger -t IWEVENT ) 3>&1 &
Run Code Online (Sandbox Code Playgroud)

如果在变量中需要它,请阅读上面的输出.