누구든지 ctrl+ z와 ctrl+ 의 차이점을 말해 줄 수 있습니까 c?
터미널에있을 때 두 조합이 현재 프로세스를 중지하지만 두 차이점은 정확히 무엇입니까?
누구든지 ctrl+ z와 ctrl+ 의 차이점을 말해 줄 수 있습니까 c?
터미널에있을 때 두 조합이 현재 프로세스를 중지하지만 두 차이점은 정확히 무엇입니까?
답변:
가장자리 케이스를 한쪽으로 남겨두면 차이점이 간단합니다. Control+ C는 거의 즉시 응용 프로그램을 중단하고 Control+ Z는 백그라운드로 중단하고 일시 중단합니다.
셸은 다음 조합에서 기본 응용 프로그램으로 다른 신호를 보냅니다.
Control+ C(제어 문자 intr
)는 SIGINT를 보내어 응용 프로그램을 중단시킵니다. 일반적으로 중단을 야기하지만 결정하는 것은 응용 프로그램에 달려 있습니다.
Control+ Z(제어 문자 susp
)는 SIGTSTP를 포 그라운드 애플리케이션으로 전송하여 백그라운드에 효과적으로 배치하고 일시 중단합니다. 이것은 편집기와 같은 것을 분리하여 필요한 데이터를 가져와야 할 때 유용합니다. 다음을 실행하여 응용 프로그램으로 돌아갈 수 있습니다 fg
(또는 그림의 작업 번호는 %x
어디에 있습니까 ).x
jobs
우리는 실행하여 테스트 할 수 있습니다 nano TEST
다음, 눌러 Control+를 Z누른 다음 실행 ps aux | grep TEST
. nano
프로세스가 아직 실행 중임 을 보여줍니다 .
oli 3278 0.0 0.0 14492 3160 pts/4 T 13:59 0:00 nano TEST
또한 상태 열에있는 T 에서 프로세스가 중지되었음을 알 수 있습니다. 그래도 여전히 살아 있지만 실행 중이 아닙니다 ... 다시 시작할 수 있습니다.
일부 응용 프로그램은 대기중인 웹 프로세스와 같은 외부 프로세스가 잠 들어있을 때 시간 초과 될 수있는 경우 충돌합니다.
bg
(대신에 fg
) 실행하는 것도 가능합니다 . 응용 프로그램을 시작할 때 사용한 것처럼 응용 프로그램을 시작한 셸 과 응용 프로그램 자체를 효과적으로 제어 할 수 있습니다 . 이것은 당신이 그것을 시작하는 것을 잊었을 때 종종 유용합니다 :)&
&
fg
다시 입력하면 해당 프로세스로 돌아갈 수 있습니다 .
ctrl c
또는 ctrl z
? 기본적으로 SID (bash)입니까?
Control+ Z는 프로세스를 일시 중단하고 ( SIGTSTP
) Control+ C는 프로세스를 중단합니다 ( SIGINT
)
http://en.wikipedia.org/wiki/Control-Z
유닉스 계열 시스템에서 Control + Z는 프로세스를 중단시키는 키 시퀀스에 대한 가장 일반적인 기본 키보드 매핑입니다.
http://en.wikipedia.org/wiki/Control-C
POSIX 시스템에서이 시퀀스는 활성 프로그램이 SIGINT 신호를 수신하게합니다. 프로그램이이 조건을 처리하는 방법을 지정하지 않으면 종료됩니다. 일반적으로 SIGINT를 처리하는 프로그램은 여전히 자체 종료되거나 내부에서 실행중인 작업을 종료합니다.
Ctrl+ C신호 처리를 죽이는 데 사용된다 SIGINT
말하면 그것은 정중 명 .
Ctrl+ Z 는 SIGTSTP
잠자기 신호와 같은 신호를 보내서 프로세스를 일시 중단하는 데 사용되며 취소 할 수 있으며 프로세스를 다시 시작할 수 있습니다.
그러나 프로세스가 일시 중단되면 fg
(전경에서 다시 시작) 및 bg
(배경에서 다시 시작 )하여 다시 시작할 수 있지만 종료 된 프로세스를 다시 시작할 수는 없습니다. 즉 Ctrl+ C& Ctrl+ 사용의 차이점 Z입니다.
일시 중단 된 프로세스를 어떻게 볼 수 있습니까?
이 jobs
명령은 다음과 같은 출력을 제공합니다.
[1]- Stopped cat
[2]+ Stopped vi
방법 죽일 배경에서 일시 중단 된 프로세스를?
kill
명령 을 사용하여 :
kill %n
여기서 명령으로 n
표시되는 번호 jobs
입니다. 고양이를 죽이고 싶다면 : kill %1
.
도움 이 될 것입니다
Ctrl+ Z는 SIGSTOP 신호를 보내 프로세스를 일시 중단하는 데 사용되며,이 신호는 프로그램에서 가로 챌 수 없습니다. 동안 Ctrl+는 C신호 SIGINT와 프로세스를 종료하고,이 종료하기 전에 자체를 정리할 수 있도록 프로그램에 의해 차단 될 수있다, 또는 전혀 종료되지 사용됩니다.
SIGTSTP
프로그램에서 잡을 수있는를 보냅니다 . 네 가지 프로그램을 일시 중단 할 수 있습니다 신호가있다 SIGSTOP
, SIGTSTP
, SIGTTIN
,는 SIGTTOU
. 이들 중 SIGSTOP
막을 수 없습니다. 다른 세 개는 다른 조건에서 프로세스를 중지하기 위해 터미널에서 사용합니다.