중복 가능성 :
Linux에서 특정 포트를 사용하는 프로세스 찾기
Ubuntu Linux 11.04를 사용하고 있습니다. 포트 4444에서 실행중인 프로세스를 찾은 다음 프로세스를 종료하는 쉘 스크립트 표현식을 작성하려면 어떻게해야합니까?
답변
lsof
프로세스를 찾는 데 사용할 수 있습니다 .
lsof -t -i:4444
포트 4444에서 수신 대기하는 프로세스의 pid 만 나열합니다.
kill `lsof -t -i:4444`
용감하다면
답변
당신은 사용 lsof
:
# lsof -n | grep TCP | grep LISTEN | grep 4444
출력은 다음과 같습니다.
pname 16125 user 28u IPv6 4835296 TCP *:4444 (LISTEN)
첫 번째 열은 프로세스 이름이고 두 번째 열은 프로세스 ID입니다. 그런 다음 출력을 구문 분석하고 프로세스 ID (PID)가 무엇인지 찾고 kill
명령을 사용 하여 종료하십시오.
답변
또는 시스템에서 사용할 수없는 netstat -ap
경우 lsof
사용할 수 있습니다 (정기적으로 작업하는 비지 박스 시스템에는 없으므로).
답변
kill -9 `netstat -lanp --protocol=inet | grep 4444 | awk -F" " '{print $7}' | awk -F"/" '{print $1}'`
netstat를 사용하여 숫자 포트 및 상위 프로세스가있는 수신 INET 소켓을 나열합니다. 문자열 4444에 대한 필터는 7 번째 열 (pid / process name)을 가져 와서 “/”로 더 분할하여 pid를 가져옵니다. 명령을 죽 이도록 전달합니다.