Linux에서는 다음을 수행할 수 있습니다.
kill 1
(또는 kill %1
)
즉, "프로세스를 닫습니다.직업 번호 1".
그리고 다음을 수행할 수 있습니다.
kill 1234
이는 " SIGTERM
PID 1234를 사용하여 프로세스에 신호를 보냅니다"를 의미합니다.
이 두 kill
명령은 동일한 명령입니까, 아니면 서로 다른 명령입니까?
답변1
나는 당신이 할 수 있을지 확신하지 못합니다 kill 1
(또는 시도할 수는 있지만 루트가 아닌 이상 허용되지 않을 것입니다. 그리고 나서 당신은 놀라게 될 것입니다). 1
여기서는 항상 ID가 1인 프로세스를 나타내며, 이는 일반적으로 init
(또는 그 변형)입니다.
실제로 귀하의 질문에 대답하기 위해 작업 제어를 지원하는 셸에 있는 경우 kill
두 경우(작업 및 프로세스 관리)를 모두 처리하는 셸이 내장됩니다. 예를 들어 참조배쉬의 kill
명령.
작업 제어를 지원하지 않는 쉘에 있는 경우(어떤 것이 있습니까?) kill
시스템에 바이너리가 됩니다. 일반적으로 /bin/kill
; 예를 들어 참조util-linux
님의 kill
명령. 내장 kill
명령이 있는 셸에서도 전체 경로를 지정하여 이 명령에 액세스할 수 있습니다. 이 kill
명령은 쉘 없이도 액세스할 수 있습니다(다른 프로그램에서 사용하기 위해).
또한보십시오POSIX의 정의kill
, 두 경우 모두를 다룹니다(단, 무엇이 어디에 구현되는지는 지정하지 않음).