Linux Ctrl+c與ctrl+z的區別


提問:CTRL-Z和CTRL-C區別?
回答:
CTRL-Z和CTRL-C都是中斷命令,但是他們的作用卻不一樣.
CTRL-C是強制中斷程序的執行,
而CTRL-Z的是將任務中斷,但是此任務並沒有結束,他仍然在進程中他只是維持掛起的狀態,用戶可以使用fg/bg操作繼續前台或后台的任務,fg命令重新啟動前台被中斷的任務,bg命令把被中斷的任務放在后台執行.
例如:
當你vi一個文件是,如果需要用shell執行別的操作,但是你又不打算關閉vi,因為你得

存盤推出,你可以簡單的按下CTRL-Z,shell會將vi進程掛起~,當你結束了那個shell操作之后,你可以用fg命令繼續vi你的文件.不是很方便么?!

 

   總結:

    (1) CTRL+Z停止進程並放入后台

    (2) jobs 顯示當前暫停的進程

    (3) bg %N 使第N個任務在后台運行(%前有空格)

    (4) fg %N 使第N個任務在前台運行

    默認bg,fg不帶%N時表示對最后一個進程操作!

 

====

 

 Linux下: ctrl-c 發送 SIGINT 信號給前台進程組中的所有進程。常用於終止正在運行的程序。 ctrl-z 發送 SIGTSTP 信號給前台進程組中的所有進程,常用於掛起一個進程。 ctrl-d 不是發送信號,而是表示一個特殊的二進制值,表

linux下:
ctrl-c 發送 SIGINT 信號給前台進程組中的所有進程。常用於終止正在運行的程序。
ctrl-z 發送 SIGTSTP 信號給前台進程組中的所有進程,常用於掛起一個進程。
ctrl-d 不是發送信號,而是表示一個特殊的二進制值,表示 EOF。
ctrl-\ 發送 SIGQUIT 信號給前台進程組中的所有進程,終止前台進程並生成 core 文件。

Key Function
Ctrl-c Kill foreground process
Ctrl-z Suspend foreground process
Ctrl-d Terminate input, or exit shell
Ctrl-s Suspend output
Ctrl-q Resume output
Ctrl-o Discard output
Ctrl-l Clear screen


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM