终端内的 ^S 和 ^Z 有什么区别?

终端内的 ^S 和 ^Z 有什么区别?

CTRL-Z使用终端仿真器时,可以使用或停止当前正在运行的程序CTRL-S。这些控制字符之间有什么区别?

答案1

这就是对终端的“停止”和“暂停”操作的区别。

使用 Ctrl-S 停止输出并不会停止进程运行;而只是停止向终端的输出(使用 Ctrl-Q /“start”恢复)。

使用 Ctrl-Z 暂停进程实际上会停止其运行,并将进程置于 ps 可见的不同状态(状态“T”)。使用“fg”或“bg”分别恢复前台或后台进程。

答案2

CTRL-Z发送SIGSTOP信号,强制程序停止。

fg

或者

bg

您可以SIGCONT在前台或后台发送并启动它。

CTRL-S只是停止向终端输出内容。( )您可以使用-XOFF将其重新打开。()CTRLQXON

相关内容