“退出并重新启动”控制代码?

“退出并重新启动”控制代码?

我发现自己经常(在对源代码进行一些更改后)“ Ctrl+ C; ing”来重新启动更改后的程序。

有没有一种方法可以更快地完成此操作,而无需将程序包装在循环中并每次都退出?

答案1

如果您不想使用循环,您的选择就会受到限制,因为它本质上阻止了一次又一次自动重新启动程序。

不过,您至少可以通过使用accept-and-hold小部件来省去这个步骤。这会运行当前命令行(就像accept-line通常绑定到 一样Enter),但也会将其推送到缓冲区堆栈上,以便在下一个提示时自动拉出它(实际上,该命令在执行后仍保留在提示符上)。默认情况下它绑定到Alt+ ainemacs模式,但它可以轻松绑定到另一个快捷方式。例如对于Ctrl+ F(因为F就在上面C

bindkey "^F" accept-and-hold

因此,您只需使用Ctrl+启动程序F,然后按Ctrl+ C, Ctrl+F停止并重新启动它。

答案2

除了使用控制代码手动重新启动之外,您还可以考虑使用专门设计用于自动执行此类过程的系统,即在代码更改后(重新)启动进程,例如守望者

您还可以使用inotifywait(来自 inotify-tools)来通知表示源代码的文件何时更改,并在更改时发送信号。

(利益冲突披露:我在 Facebook 工作,但不在守望者团队工作。)

相关内容