특정 포트를보기위한 명령 줄


263

Windows 명령 줄에서 특정 포트의 상태를 검사하는 방법이 있습니까? netstat를 사용하여 모든 포트를 검사 할 수는 있지만 netstat가 느리고 특정 포트를 보는 것은 아마 그렇지 않습니다.


6
netstat-n스위치를 사용하지 않으면 속도가 느려져 DNS 조회를 많이 수행해야합니다.
Lorne의 후작

답변:


282

다음은 포트 찾기 쉬운 솔루션 입니다 ...

cmd에서 :

netstat -na | find "8080"

bash에서 :

netstat -na | grep "8080"

PowerShell에서 :

netstat -na | Select-String "8080"

3
이 명령을 사용하는 방법? 이 포트 번호가 작동하는지 또는 링크되지 않는지 알고 싶습니다 .- [link] (https : //.localhost : 9043 / ibm / console / login.do)
Mayur Ingle

8
포트를 사용하는 프로세스의 PID를 포함 하는 -o플래그 (예 : -nao여기)를 언급 할 가치가 있습니다.
Steve Chambers

104

플래그와 netstat함께 결합 -np하여 find또는 findstr명령에 파이프를 사용할 수 있습니다 .

기본 사용법은 다음과 같습니다.

netstat -np <protocol> | find "port #"

예를 들어 TCP에서 포트 80을 확인 netstat -np TCP | find "80" 하려면 다음과 같이하십시오. 그러면 다음과 같은 출력이 나타납니다.

TCP    192.168.0.105:50466    64.34.119.101:80       ESTABLISHED
TCP    192.168.0.105:50496    64.34.119.101:80       ESTABLISHED

보다시피, 이것은 TCP 프로토콜에 대한 포트 80의 연결 만 보여줍니다.


73

나는 사용한다:

netstat –aon | find "<port number>"

여기서 o는 프로세스 ID를 나타냅니다. 이제 프로세스 ID로 무엇이든 할 수 있습니다. 예를 들어 프로세스를 종료하려면 다음을 사용하십시오.

taskkill /F /pid <process ID>

간단하고 또렷한 답변, 감사합니다
Mohit Singh

69

WAMP apache에 문제가있을 때이 코드를 사용하여 포트 80을 사용하는 프로그램을 찾으십시오.

netstat -o -n -a | findstr 0.0:80

여기에 이미지 설명을 입력하십시오

3068 PID이므로 작업 관리자에서 찾아 해당 프로세스를 중지 할 수 있습니다.


정말 고마워요! 특히 TCP의 경우 다음을 사용합니다. netstat -o -nap TCP | findstr 0.0 : 80
denyoha

20

다른 곳에서 언급 한 것처럼 : 적절한 스위치와 함께 netstat를 사용하고 find [str]로 결과를 필터링하십시오.

가장 기본 :

netstat -an | find ":N"

또는

netstat -a -n | find ":N"

사용할 수있는 외부 포트를 찾으려면 다음을 수행하십시오.

netstat -an | findstr ":N[^:]*$"

로컬 포트를 찾으려면 다음을 사용하십시오.

netstat -an | findstr ":N.*:[^:]*$"

여기서 N 은 관심있는 포트 번호입니다.

-n 모든 포트가 숫자로 표시되도록합니다. 즉, 서비스 이름으로 변환 된대로 반환되지 않습니다.

-a 모든 연결 (TCP, UDP, 청취 ...)을 검색하도록합니다.

에서 find문자열 당신은 포트 규정 자로, 그렇지 않으면 번호 중 하나를 로컬 또는 해외 주소와 일치 할 수있다, 콜론을 포함해야합니다.

필요에 따라 다른 netstat 스위치를 사용하여 검색 범위를 좁힐 수 있습니다 ...

더 읽을 거리 (^ 0 ^)

netstat /?

find /?

findstr /?

9
netstat -a -n | find /c "10.240.199.9:8080"

특정 IP 및 포트에서 활성화 된 소켓 수를 제공합니다 (서버 포트 번호)


3
이것은 R2 윈도우 2012에서 윈도우 파워 쉘 작업과 같은 결과를 수신하지FIND: Parameter format not correct
Chaminda 다라

6

Windows 8 사용자의 경우 : 명령 프롬프트를 열고 netstat -an | "포트 번호" 를 찾아 입력하십시오.

응답이 LISTENING 과 같은 경우 포트가 사용 중이면 사용 가능합니다.


2

@EndUzr의 응답 을 개선하려면 :

외부 포트 (IPv4 또는 IPv6)를 찾으려면 다음을 사용할 수 있습니다.

netstat -an | findstr /r /c:":N [^:]*$"

로컬 포트 ​​(IPv4 또는 IPv6)를 찾으려면 다음을 사용할 수 있습니다.

netstat -an | findstr /r /c:":N *[^ ]*:[^ ]* "

여기서 N은 관심있는 포트 번호입니다. "/ r"스위치는 해당 포트 번호를 regexp로 처리하도록 지시합니다. "/ c"스위치를 사용하면 findstr이 공백을 검색 문자열 분리 문자로 취급하는 대신 검색 문자열 내에 공백을 포함 할 수 있습니다. 이 추가 된 공간은 더 긴 포트가 잘못 처리되는 것을 방지합니다 (예 : ": 80"vs ": 8080"및 기타 포트 녹잉 문제).

로컬 RDP 서버에 대한 원격 연결을 나열하려면 다음과 같이하십시오.

netstat -an | findstr /r /c:":3389 *[^ ]*:[^ ]*"

또는 누가 귀하의 DNS를 만지고 있는지 확인하십시오.

netstat -an | findstr /r /c:":53 *[^ ]*:[^ ]*"

로컬 전용 포트를 제외하려면 "/ v"와 함께 일련의 예외를 사용하고 백 슬래시를 사용하여 이스케이프 문자를 사용할 수 있습니다.

netstat -an | findstr /v "0.0.0.0 127.0.0.1 \[::\] \[::1\] \*\:\*" | findstr /r /c:":80 *[^ ]*:[^ ]*"

1

포트 80의 경우 명령은 다음과 같습니다. netstat -an | find "80"포트 n의 경우 명령은 다음과 같습니다. netstat -an | "n"을 찾으십시오

여기서 netstat는 시스템에 대한 지침입니다.

-a : 모든 연결 및 청취 포트를 표시합니다. -n : 모든 주소와 명령어를 숫자 형식으로 표시합니다 (-a의 출력에 기계 이름이 포함될 수 있기 때문에 필요함).

그런 다음 찾기 명령은 이전 명령의 출력을 "패턴 일치"합니다.


0

이것은 당신을 도울 것입니다

netstat -atn | grep <port no>          # For tcp
netstat -aun | grep <port no>           # For udp
netstat -atun | grep <port no>          # For both

0

RHEL 7에서는이 명령을 사용하여 LISTEN 상태의 여러 포트를 필터링합니다.

sudo netstat -tulpn | grep LISTEN | egrep '(8080 |8082 |8083 | etc )'

-1

이 명령은 모든 포트와 대상 주소를 표시합니다.

netstat -f 

1
요청은 특정 포트가 사용 중인지 확인하는 것이 었습니다.
Ro Yo Mi

-5

lsof 명령 "lsof -i tcp : port #"을 사용하십시오. 여기 예가 있습니다.

$ lsof -i tcp:1555 
COMMAND   PID USER   FD   TYPE   DEVICE SIZE/OFF NODE NAME
java    27330 john  121u  IPv4 36028819      0t0  TCP 10.10.10.1:58615->10.10.10.10:livelan (ESTABLISHED)
java    27330 john  201u  IPv4 36018833      0t0  TCP 10.10.10.1:58586->10.10.10.10:livelan (ESTABLISHED)
java    27330 john  264u  IPv4 36020018      0t0  TCP 10.10.10.1:58598->10.10.10.10:livelan (ESTABLISHED)
java    27330 john  312u  IPv4 36058194      0t0  TCP 10.10.10.1:58826->10.10.10.10:livelan (ESTABLISHED)

4
Windows 명령이 아니기 때문에 마이너스 포인트입니다. Windows에서 사용 가능한 경우이를 확보하는 방법에 대한 설명이 없습니다.
Ro Yo Mi

1
OP의 질문에 대답하지 않습니다. -1.
FractalSpace
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.