OS X Mountain Lion 랩톱에 있고 몇 개의 Vagrant 상자가 있습니다. 어떤 프로세스가 포트 8080에서 수신 대기 중인지 알아 내려고 노력 중입니다. 내 변형은 백 라인처럼 생성되지만 특정 포트 번호는 없습니다. 나는 다음과 같은 것을 가정하고있다 :
netstat -XXX | grep 8080
OS X Mountain Lion 랩톱에 있고 몇 개의 Vagrant 상자가 있습니다. 어떤 프로세스가 포트 8080에서 수신 대기 중인지 알아 내려고 노력 중입니다. 내 변형은 백 라인처럼 생성되지만 특정 포트 번호는 없습니다. 나는 다음과 같은 것을 가정하고있다 :
netstat -XXX | grep 8080
답변:
불행히도 OSX에서는 BSD가 붙어있어 netstat
주어진 포트에 연결된 프로세스 ID를 보여주지 않습니다. 대신해야 할 일은 use lsof
입니다. 사용해야 할 구문은 다음과 같습니다.
lsof -i :8080
이것은 당신이 신경 쓰지 않는 정보의 덩어리를 인쇄하지만 필드에는 레이블이 잘 지정되어 있습니다. 예를 들어이 예제 출력을 확인하십시오.
lsof -i :53237
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
GoogleTal 927 guest 29u IPv4 0x2c3f7f95244855c3 0t0 TCP localhost:53237 (LISTEN)
이것은 프로세스 ID 927에서 포트 53237을 사용하고 있음을 알려줍니다. COMMAND 필드를 읽을 때이 출력이 잘린다는 사실을 기억하십시오. 실제로 바이너리의 전체 이름은 GoogleTalkPlugin입니다.
VBoxHeadl
-어떤 VirtualBox 인스턴스 (지금 두 개가 있는지)를 볼 수있는 방법이 있습니까? 아니면 너무 많이 묻습니다 (후자). thx
lsof -p PID
파일 이 나열되어 있는지 확인하거나 열려있는 파일 목록을 찾을 때까지 사용 하고 찾아 볼 수 있습니다.
이것이 청취 포트의 PID를 찾을 때 사용하고 싶은 것입니다. Linux 용 :netstat -tunlp
추가 정보는 매뉴얼 페이지에서 찾을 수 있습니다.
-p
프로그램에 대한 인수를 나열하지 않습니다. 이걸 어떻게 봅니까?
-p
OSX에서는입니다 port
. OSX와 Linux에 대해 다른 주장을하려는 개발자의 결정이 싫습니다 ...
나는 netstat
이 기능을 제공하기 위해 OS X에서 수정하는 과정에 있었고 -v
소켓과 관련된 pid를 제공 한다는 사실에 우연히 발견되었습니다 .
-v
상세 레벨 이 증가하고 문서화됩니다. developer.apple.com/library/mac/documentation/Darwin/Reference/...
netstat 명령 아래에서 특정 포트 사용을 찾으려면
netstat -an | grep ':8080'
남자 netstat에서
-p, --program 각 소켓이 속하는 프로그램의 PID 및 이름을 표시합니다.
나는 보통 이것을한다 : netstat -antup | 그렙 8080
-p protocol Show statistics about protocol, which is either a well-known name
-p
PID를 표시하는 것은 GNU netstat 명령이고 OSX는 BSD netstat를 사용합니다.
-p
프로그램에 대한 인수를 나열하지 않습니다. 이걸 어떻게 봅니까?
-p
OSX에서는입니다 port
. OSX와 Linux에 대해 다른 주장을하려는 개발자의 결정이 싫습니다 ...