Ctrl + z 和 Linux jobs

最近在使用 star agent 的过程中,颇感 webssh 开窗口不太方便,不像原本在本地用的多窗口工具那么方便。不过在使用 Ctrl + z 和 linux 本身的 jobs 命令之后,这个情况得到了改善。

一个很常见的一个场景,在 daily 或者预发上,直接 kill 原本出了问题的 node 进程然后,修改添加一些日志输出之后,在重新启动一个 http server,然后用 curl 命令(或者 ab 之类的命令)去请求它测试一下。这个时候就可以使用 ctrl+z 切换后台来节省开多个终端的时间。

$ node index
# ctrl+z
^Z
[1]  + 26762 suspended  node index

启动之后直接 ctrl+z 就可以切换到后台。然后可以通过 jobs 来查看后台程序:

$ jobs
[1]  + suspended  node index

切换到后台之后,就可以对 server 进行 curl 或者 ab 等其他命令操作。等操作结束后,想查看 server 的日志,可以重新将其从后台转到前台来:

$ fg
[1]  + 26762 continued  node index
# ... 应用日志

这样就可以不用开多个终端了。直接结束前台的程序可以使用 ctrl+c。

这里有一个简单的前台程序和后台程序的概念。通常的后台程序启动方式是:

node index &

多个后台任务可以通过 %n 来选择恢复某个到前台。例如:

$ fg %1

就可以恢复 jobs 显示的编号为 1 的任务。恢复到前台之后可以通过 ctrl+c 结束任务。也可以通过 kill 来直接杀死后台任务:

$ kill %1
上一篇:利用数据库漏洞扫描评估数据库安全性 4 弱口令扫描


下一篇:阿里云FPGA云服务器(FaaS) Python SDK正式发布啦!