我在 bash 脚本中启动多个屏幕,然后运行 djangorunserver
命令他们每个人。我也希望能够以编程方式阻止它们,这需要我发送Control+c
to runserver
.
如何从 bash 脚本发送这些击键?
Ctrl+C sends a SIGINT
signal.
kill -INT <pid>
发送一个SIGINT
信号也:
# Terminates the program (like Ctrl+C)
kill -INT 888
# Force kill
kill -9 888
假设888
是你的进程ID。
注意kill 888
发送一个SIGTERM
信号,略有不同,但也会要求程序停止。因此,如果您知道自己在做什么(没有处理程序绑定到SIGINT
在程序中),一个简单的kill
足够。
要获取脚本中最后启动的命令的 PID,请使用$!
:
# Launch script in background
./my_script.sh &
# Get its PID
PID=$!
# Wait for 2 seconds
sleep 2
# Kill it
kill $PID
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)