Ctrl + z 和 Linux jobs

简介: 最近在使用 star agent 的过程中,颇感 webssh 开窗口不太方便,不像原本在本地用的多窗口工具那么方便。不过在使用 Ctrl + z 和 linux 本身的 jobs 命令之后,这个情况得到了改善。 一个很常见的一个场景,在 daily 或者预发上,直接 kill 原本出了问题的 node 进程然后,修改添加一些日志输出之后,在重新启动一个 http server,然后用 cu

最近在使用 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月前
|
安全 小程序 Linux
Linux中信号是什么?Ctrl + c后到底为什么会中断程序?
信号在进程的学习中是一个非常好用的存在,它是软件层次上对中断机制的一种模拟,是异步通信方式,同时也可以用来检测用户空间到底发生了什么情况,然后系统知道后就可以做出相应的对策。
120 6
|
5月前
|
监控 数据挖掘 Linux
Linux命令jobs:后台任务管理利器
`jobs`是Linux终端的利器,用于管理和查看后台任务。它显示当前会话中的作业状态,如运行、停止,可通过`Ctrl+Z`暂停任务,`bg`放后台,`fg`回前台。参数`-l`显示PID,`-n`显示最近状态变化的作业。`jobs`帮助高效监控和管理长时间运行的命令,如在数据分析时。记得使用正确任务编号,谨慎使用`kill`,并定期检查任务状态。
|
4月前
|
Linux 数据安全/隐私保护 iOS开发
Linux的root用户,普通用户无法在根录中创建文件,一般在其HOME目录里是不受限的,一旦出了HOME目录,大多数地方,仅有读和执行的权限,ctrl + d回到上一个用户,Exit,su - ro
Linux的root用户,普通用户无法在根录中创建文件,一般在其HOME目录里是不受限的,一旦出了HOME目录,大多数地方,仅有读和执行的权限,ctrl + d回到上一个用户,Exit,su - ro
LINUX下用CTRL+R快速搜索HISTORY历史命令,快速索引到之前使用过的命令行语句
LINUX下用CTRL+R快速搜索HISTORY历史命令,快速索引到之前使用过的命令行语句
|
Linux Python
ctrl+c kill -9 kill -15 差异性 python和linux中的信号
ctrl+c kill -9 kill -15 差异性 python和linux中的信号
167 0
|
Linux C语言
linux信号的简单运用,改变Ctrl+C的退出程序信号 编程源码
linux信号的简单运用,改变Ctrl+C的退出程序信号 编程源码
189 0
Linux Ctrl r 快速查询历史命令并查找符合条件的多条命令
Linux Ctrl r 快速查询历史命令并查找符合条件的多条命令
|
Shell Linux 开发工具
Linux中Ctrl+C,Ctrl+Z,Ctrl+D说明
Ctrl+C:送SIGINT信号,默认进程会结束,但是进程自己可以重定义收到这个信号的行为。 Ctrl+Z:送SIGSTOP信号,进程只是被停止,再送SIGCONT信号,进程继续运行。
3834 0
|
Linux
12.15 Linux查看当前终端放入后台的工作(jobs命令)
jobs 命令可以用来查看当前终端放入后台的工作,工作管理的名字也来源于 jobs 命令。
235 0
12.15 Linux查看当前终端放入后台的工作(jobs命令)