关于linux中的Ctrl+C,Ctrl+Z,Ctrl+D

简介:

Ctrl+C:送SIGINT信号,默认进程会结束,但是进程自己可以重定义收到这个信号的行为。
Ctrl+Z:送SIGSTOP信号,进程只是被停止,再送SIGCONT信号,进程继续运行。
Ctrl+D:不是发送信号,而是表示一个特殊的二进制值,表示 EOF。

有些信号不能被屏蔽,比如中断,还应该有杀死进程的信号,要不然内核怎么做操作系统中的老大。实际上,SIGKILL和SIGSTOP信号是不能被屏蔽或阻止的,它们的默认动作总是会被执行的。

Ctrl+C和Ctrl+Z都是中断命令,但是它们的作用却不一样。
Ctrl+C是强制中断程序的执行;
Ctrl+Z的作用是将任务中断,但是此任务并没有结束,它仍然以进程形式存在于系统中,它只是维持挂起的状态。用户可以使用fg/bg操作继续前台或后台的任务,fg命令重新启动前台被中断的任务,bg命令把被中断的任务放在后台执行。

例如:
当你vim一个文件是,如果需要用shell执行别的操作命令,但是你又不打算关闭vim,因为你得存盘退出,你可以简单的按下ctrl+z,shell会将vim进程挂起。当结束了别的shell操作之后,你可以用fg命令继续vim你的文件。

目录
相关文章
|
5月前
|
安全 小程序 Linux
Linux中信号是什么?Ctrl + c后到底为什么会中断程序?
信号在进程的学习中是一个非常好用的存在,它是软件层次上对中断机制的一种模拟,是异步通信方式,同时也可以用来检测用户空间到底发生了什么情况,然后系统知道后就可以做出相应的对策。
141 6
|
5月前
|
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中的信号
173 0
|
Linux C语言
linux信号的简单运用,改变Ctrl+C的退出程序信号 编程源码
linux信号的简单运用,改变Ctrl+C的退出程序信号 编程源码
193 0
Linux Ctrl r 快速查询历史命令并查找符合条件的多条命令
Linux Ctrl r 快速查询历史命令并查找符合条件的多条命令
|
Shell Linux 开发工具
Linux中Ctrl+C,Ctrl+Z,Ctrl+D说明
Ctrl+C:送SIGINT信号,默认进程会结束,但是进程自己可以重定义收到这个信号的行为。 Ctrl+Z:送SIGSTOP信号,进程只是被停止,再送SIGCONT信号,进程继续运行。
3878 0
|
监控 Shell Linux
Ctrl + z 和 Linux jobs
最近在使用 star agent 的过程中,颇感 webssh 开窗口不太方便,不像原本在本地用的多窗口工具那么方便。不过在使用 Ctrl + z 和 linux 本身的 jobs 命令之后,这个情况得到了改善。 一个很常见的一个场景,在 daily 或者预发上,直接 kill 原本出了问题的 node 进程然后,修改添加一些日志输出之后,在重新启动一个 http server,然后用 cu
1263 0
|
Linux Windows 开发工具