it-swarm-vi.com

Dòng lệnh để xem cổng cụ thể

Có cách nào để kiểm tra trạng thái của một cổng cụ thể từ dòng lệnh Windows không? Tôi biết tôi có thể sử dụng netstat để kiểm tra tất cả các cổng nhưng netstat chậm và nhìn vào một cổng cụ thể có lẽ là không.

213
user1580018

Đây là giải pháp dễ dàng của việc tìm kiếm cổng ...

Trong cmd:

netstat -na | find "8080"

Trong bash:

netstat -na | grep "8080"
203
Md. Naushad Alam

Bạn có thể sử dụng các netstat kết hợp với các cờ -np và một đường ống cho các lệnh find hoặc findstr.

Cách sử dụng cơ bản là như vậy:

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

Vì vậy, ví dụ để kiểm tra cổng 80 trên TCP, bạn có thể thực hiện việc này: netstat -np TCP | find "80" Cuối cùng sẽ đưa ra loại đầu ra sau:

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

Như bạn có thể thấy, điều này chỉ hiển thị các kết nối trên cổng 80 cho giao thức TCP.

100
Rivasa

khi tôi gặp vấn đề với WAMP Apache, tôi sử dụng mã này để tìm chương trình nào đang sử dụng cổng 80.

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

enter image description here

3068 là PID, vì vậy tôi có thể tìm thấy nó từ trình quản lý tác vụ và dừng quá trình đó.

66
Mohsen Safari

Tôi sử dụng:

netstat –aon | find "<port number>"

ở đây o đại diện cho ID quá trình. bây giờ bạn có thể làm bất cứ điều gì với ID tiến trình. Để chấm dứt quá trình, ví dụ: sử dụng:

taskkill /F /pid <process ID>
61
Himadri Pant

Như đã lưu ý ở nơi khác: sử dụng netstat, với các công tắc thích hợp và sau đó lọc kết quả bằng find [str]

Cơ bản nhất:

netstat -an | find ":N"

hoặc là

netstat -a -n | find ":N"

Để tìm một cổng nước ngoài, bạn có thể sử dụng:

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

Để tìm một cổng cục bộ, bạn có thể sử dụng:

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

Trong đóNlà số cổng bạn quan tâm.

-n đảm bảo tất cả các cổng sẽ là số, tức là không được trả lại dưới dạng dịch sang tên dịch vụ.

-a sẽ đảm bảo bạn tìm kiếm tất cả các kết nối (TCP, UDP, lắng nghe ...)

Trong chuỗi find, bạn phải bao gồm dấu hai chấm, làm vòng loại cổng, nếu không, số có thể khớp với địa chỉ địa phương hoặc địa chỉ nước ngoài.

Bạn có thể thu hẹp hơn nữa việc tìm kiếm bằng các công tắc netstat khác nếu cần ...

Đọc thêm (^ 0 ^)

netstat /?

find /?

findstr /?
19
EndUzr
netstat -a -n | find /c "10.240.199.9:8080"

nó sẽ cung cấp cho bạn số lượng ổ cắm hoạt động trên một cổng và IP cụ thể (số cổng máy chủ)

8
Uday Singh

Đối với người dùng Windows 8: Dấu nhắc mở, gõ netstat -an | tìm "số cổng của bạn" , nhập.

Nếu trả lời nhưNGHEthì cổng đang được sử dụng, nếu không thì nó là miễn phí.

5
Pratik Roy

Để cải thiện phản hồi @ EndUzr :

Để tìm cổng nước ngoài (IPv4 hoặc IPv6), bạn có thể sử dụng:

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

Để tìm một cổng cục bộ (IPv4 hoặc IPv6), bạn có thể sử dụng:

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

Trong đó N là số cổng bạn quan tâm. Công tắc "/ r" bảo nó xử lý nó dưới dạng regrec. Công tắc "/ c" cho phép findstr bao gồm khoảng trắng trong chuỗi tìm kiếm thay vì coi khoảng trắng là dấu phân cách chuỗi tìm kiếm. Không gian được thêm vào này ngăn các cổng dài hơn bị ngược đãi - ví dụ: ": 80" so với ": 8080" và các vấn đề khác về cổng.

Để liệt kê các kết nối từ xa đến máy chủ RDP cục bộ, ví dụ:

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

Hoặc để xem ai đang chạm vào DNS của bạn:

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

Nếu bạn muốn loại trừ các cổng chỉ cục bộ, bạn có thể sử dụng một loạt các trường hợp ngoại lệ với "/ v" và thoát các ký tự có dấu gạch chéo ngược:

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

Đối với cổng 80, lệnh sẽ là: netstat -an | tìm "80" Đối với cổng n, lệnh sẽ là: netstat -an | tìm "n"

Ở đây, netstat là hướng dẫn cho máy của bạn

.

Sau đó, một lệnh find để "Khớp mẫu" đầu ra của lệnh trước đó.

1
subodhkarwa

Điều này sẽ giúp bạn

netstat -plan | grep :<port number>
0
jobin