kill 명령을 사용하여 SIGRTMAX-9 신호를 보낼 수 없는 이유는 무엇입니까?

kill 명령을 사용하여 SIGRTMAX-9 신호를 보낼 수 없는 이유는 무엇입니까?

백그라운드에서 실행 중인 bash 스크립트가 있고 전송하고 싶습니다.SIGRTMAX-9그것에 신호를 보내십시오.

SIGRTMAX-* 상황

kill명령이 인식되지 않는 이유SIGRTMAX-9신호?

╭─ /tmp/tmp.KHFbrCQhOB                                                        
╰─ kill -SIGRTMAX-9 $(pgrep bash)
kill: unknown signal: SIGRTMAX-9
kill: type kill -l for a list of signals

다음을 사용하여 kill 명령을 실행하면 sudo:

╭─ /tmp/tmp.KHFbrCQhOB                                                        
╰─ sudo kill -SIGRTMAX-9 $(pgrep bash)
kill: invalid argument S

Usage:
 kill [options] <pid> [...]
 
 ...

 For more details see kill(1).

SIGRTMIN+* 케이스

내가 보내면SIGRTMIN+3다음에서만 작동합니다 sudo.

╭─ /tmp/tmp.KHFbrCQhOB                                                 
╰─ kill -SIGRTMIN+3 $(pgrep bash)     
kill: unknown signal: SIGRTMIN+3
kill: type kill -l for a list of signals
╭─ /tmp/tmp.KHFbrCQhOB                                                        
╰─ sudo kill -SIGRTMIN+3 $(pgrep bash)

╭─ /tmp/tmp.KHFbrCQhOB                                                        
╰─ echo $?                            
0

답변1

나는 이 문제를 해결했습니다. 간단했습니다. 그냥 which kill인쇄해 봤습니다 kill: shell built-in command.zsh 세션, 그리고 내장된 명령이 있어서 그냥 호출하는 대신 kill호출하는 문제를 해결했습니다 ./bin/kill -SIGRTMAX-9 $(pgrep bash)kill -SIGRTMAX-9 $(pgrep bash)

관련 정보