![有没有简单的方法来停止并重新发出命令?](https://linux22.com/image/48530/%E6%9C%89%E6%B2%A1%E6%9C%89%E7%AE%80%E5%8D%95%E7%9A%84%E6%96%B9%E6%B3%95%E6%9D%A5%E5%81%9C%E6%AD%A2%E5%B9%B6%E9%87%8D%E6%96%B0%E5%8F%91%E5%87%BA%E5%91%BD%E4%BB%A4%EF%BC%9F.png)
我正在 Ubuntu 中进行 Node.js 开发,我很好奇是否有一种方法可以快速停止并重新启动节点服务器。
我运行此命令来启动我的应用程序:
$ 节点应用程序.js
当我对 app.js 进行更改时,我必须重新启动服务器。要停止它,我必须使用 CTRL-C,然后使用 UP,然后enter重新发出启动命令。
有没有更快的方法来做到这一点?直到您进行许多细微更改并需要多次重新启动之前,这似乎并不算什么。
答案1
循环运行:
while : ; do node app.js ; done
因此,每次您按下 CTRL-C 时,它都会结束当前节点并自行开始下一个节点。
要结束循环,只需按住 CTRL-C 一段时间或从另一个 shell 中终止,甚至关闭 shell 会话。
答案2
许多服务器接受SIGHUP
重新加载其配置的信号。但如果这对您不起作用,一个简单的替代方法是使用 Control-O 而不是 return。执行此命令,然后从历史记录中获取下一个命令。试试这样:
echo hello
echo world
[cursor-up twice]
[now press control-O until you get bored]
适用于 Bash,我忘记了这个功能有多广泛。
在这种情况下,如果要node
重复运行,您只需交替使用 Control-C 和 Control-O。