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你的文件。

给TA买糖
共{{data.count}}人
人已赞赏
知识分享

【Debian10】使用Rclone挂载Google Drive

2020-9-9 20:14:00

知识分享

【WordPress】文章关键词自动添加链接

2020-9-10 20:19:00

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索