Bash陷阱退出终止进程

igg*_*ggy 0 bash

我的bash文件中有以下内容:(在任何情况下,一旦bash脚本结束,我想杀死一个Web服务器)

python -m SimpleHTTPServer 12345 &
trap "kill $!" EXIT
Run Code Online (Sandbox Code Playgroud)

我想知道这有多安全/普遍?什么时候会$!被评估(我很确定这发生在声明的地方,但仍然需要建议)?

Joh*_*ica 5

你写的是安全的.因为您使用的是双引号,所以$!会立即进行评估.如果您使用单引号,则会在脚本退出时进行评估.