![그들 모두를 죽일전체 시스템 [닫기]](https://linux55.com/image/38538/%EA%B7%B8%EB%93%A4%20%EB%AA%A8%EB%91%90%EB%A5%BC%20%EC%A3%BD%EC%9D%BC%EC%A0%84%EC%B2%B4%20%EC%8B%9C%EC%8A%A4%ED%85%9C%20%5B%EB%8B%AB%EA%B8%B0%5D.png)
두 개의 터미널 창을 열고 있습니다.
터미널 1 - process1을 실행합니다.
터미널 2 - process2를 실행합니다.
그런 다음 각 창에서 +를 사용하여 Ctrl두 프로세스를 모두 종료합니다 .Z
터미널 2에 입력 했는데 killall -9 process1
피드백이 없습니다.
나중에 나는 터미널 1에서 process1이 실제로 종료되지 않았다는 것을 깨달았습니다.
터미널 2 콘솔에서 터미널 1의 process1을 종료하는 방법은 무엇입니까?
답변1
#!/bin/bash
process="$1"
null=/dev/null
if pkill -9 "$process" &> $null ; then
if pgrep "$process" &> $null ; then
echo "$process is still running"
exit 1
fi
echo "$process killed successfully"
exit 0
fi
echo "Process $process not found"
exit 1
지침:./script.sh process1
출력을 검토 pkill
하고 pgrep
해당 항목을 삭제합니다.&> $null