답변:
포트 3000에있는 것을 죽이려고한다고 가정하면 (웹릭이 일반적으로 사용하는 것) 터미널에 이것을 입력하여 프로세스의 PID를 찾으십시오.
$ lsof -wni tcp:3000
그런 다음 PID 열의 숫자를 사용하여 프로세스를 종료하십시오.
$ kill -9 PID
PID
줄에서 첫 번째 코드 줄 (예 :)을 입력 할 때 콘솔에 표시되는 실제 숫자로를 바꾸어야합니다 12345
.
lsof -wni tcp:3000
를 수행하면 항상 해당 프로토콜 : 포트 조합에서 수신 대기하는 모든 프로세스가 표시 됩니다 . (3000은 로컬 서버 포트로 대체됩니다. 예를 들어 Rails에서는 기본적으로 3000입니다.)
kill -9 $(lsof -i tcp:3000 -t)
-t
의미하는 것은 specifies that lsof should produce terse output with process identifiers only and no header - e.g., so that the output may be piped to kill(1).
당신이 무엇인지 생각보다 kill
할 것
kill -9
rote / habitually 사용에 대한 허용 된 답변에 대한 내 의견을 참조하십시오 .
tcp port 3000을 사용하여 프로그램의 프로세스 ID를 가져와야합니다. 프로세스 ID를 얻으려면
lsof -i tcp:3000 -t
그런 다음 해당 프로세스 ID를 사용하여 ubuntu kill 명령을 사용하여 프로세스를 간단히 종료하십시오.
kill -9 pid
또는 아래에 언급 된 결합 명령을 실행하십시오. 먼저 pid를 가져온 다음 해당 프로세스를 종료합니다.
kill -9 $(lsof -i tcp:3000 -t)
kill -9
rote / habitually 사용에 대한 허용 된 답변에 대한 내 의견을 참조하십시오 .
Mac에없는이 질문을 우연히 해결하려는 사람 : 서버가 포트 3000에서 실행되고 있다고 가정하면 다음을 실행하여 한 번에이 작업을 수행 할 수 있습니다.
fuser -k 3000/tcp
그러나 Toby가 언급했듯이 Mac OS에서 퓨저 구현은 다소 원시적이며이 명령은 Mac에서 작동하지 않습니다.
-v
플래그를 추가하면 어떤 프로세스가 종료되었는지에 대한 소량의 정보도 표시됩니다. 그래서 fuser -kv 3000/tcp
. 아쉽게도 MacOS의 퓨저에는이 기능이 없습니다. kill $(lsof -ti tcp:3000)
그래도 상당히 비슷합니다.
때때로 레일 서버가 제대로 닫히지 않을 수도 있습니다. 레일이 사용하는 프로세스를 찾을 수 있습니다
PS AUX | 그렙 레일
출력은 다음과 같습니다
user 12609 9.8 0.5 66456 45480 pts/0 Sl+ 21:06 0:02 /home/user/.rvm/rubies/ruby-2.2.0-preview1/bin/ruby bin/rails s
여기서 process_id 12609는 rails 서버에서 사용됩니다.
명령으로 쉽게 죽일 수 있습니다
죽이기 -9 12609
kill -9
rote / habitually 사용에 대한 허용 된 답변에 대한 내 의견을 참조하십시오 .
ps aux | grep puma
위의 모든 답변은 실제로 훌륭하지만 터미널에 가능한 한 적게 입력하는 방법이 필요했기 때문에 보석을 만들었습니다. gem을 한 번만 설치하고 Rails 프로세스를 종료 할 때마다 (현재 폴더에있는 동안) 'shutup'명령을 실행할 수 있습니다.
gem install shutup
그런 다음 rails 프로젝트의 현재 폴더로 이동하여 실행하십시오.
shutup
# 이것은 현재 실행중인 Rails 프로세스를 종료시킵니다
원할 때마다 'shutup'명령을 사용할 수 있습니다
점령 자 : 저는이 보석의 제작자입니다
참고 : rvm을 사용하는 경우 gem을 전체적으로 설치하십시오.
rvm @global do gem install shutup
lsof
접근 방식은 더 신뢰할 수있다.
Windows 시스템에있는 경우 다음 단계를 수행하십시오.
c:/project/
cd tmp
c:/project/tmp
cd pids
c:/project/tmp/pids
dir
거기에 server.pid라는 파일이 있습니다.
삭제하십시오.
c:/project/tmp/pid> del *.pid
그게 다야.
편집 : 이것을 참조하십시오