如何在screen会话中用Ctrl+C终止Node脚本并重启?
如何在指定Screen会话中终止并重启Node脚本
终止运行中的Node脚本
要向名为testBot的Screen会话发送Ctrl+C信号终止前台的Node进程,直接使用screen的stuff命令发送对应的按键序列即可:
- 方法一(通过快捷键输入特殊字符):
注:这里的screen -S testBot -X stuff "^C"^C需要通过按住Ctrl+V再按C的方式输入,不是直接输入字符。 - 方法二(使用ASCII转义字符):
screen -S testBot -X stuff "\003"\003是Ctrl+C对应的ASCII码,无需特殊输入操作。
如果该Screen会话包含多个窗口,需要指定目标窗口(比如第一个窗口,编号为0):
screen -S testBot -p 0 -X stuff "\003"
重启Node脚本
终止进程后,可等待1秒确保进程完全退出(可选操作),再发送启动命令:
sleep 1 screen -S testBot -X stuff "node index.js\n"
这里的\n代表回车,用于触发命令执行,和手动输入回车的效果一致。
一键完成终止+重启
可以把命令串联起来执行:
screen -S testBot -X stuff "\003"; sleep 1; screen -S testBot -X stuff "node index.js\n"
内容的提问来源于stack exchange,提问作者nikkkushkaaafx
相关产品推荐
相关产品推荐

