it-swarm.asia

سطر الأوامر للنظر في منفذ معين

هل هناك طريقة لفحص حالة منفذ معين من سطر أوامر Windows؟ أعلم أنه يمكنني استخدام netstat لفحص جميع المنافذ ولكن netstat بطيء والنظر في منفذ معين قد لا يكون كذلك.

213
user1580018

هنا هو الحل السهل لإيجاد منفذ ...

في كمد:

netstat -na | find "8080"

في باش:

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

يمكنك استخدام netstat مع إشارات -np وأنبوب توجيه إلى الأمرين find أو findstr.

الاستخدام الأساسي على هذا النحو:

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

على سبيل المثال ، للتحقق من المنفذ 80 على TCP ، يمكنك القيام بذلك: 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

كما ترى ، يعرض هذا فقط الاتصالات على المنفذ 80 للبروتوكول TCP.

100
Rivasa

عندما أواجه مشكلة مع WAMP Apache ، استخدم هذا الرمز للعثور على البرنامج الذي يستخدم المنفذ 80.

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

enter image description here

3068 هو PID ، لذلك يمكنني العثور عليه من مدير المهام وإيقاف هذه العملية.

66
Mohsen Safari

أنا أستعمل:

netstat –aon | find "<port number>"

هنا س يمثل معرف العملية. الآن يمكنك أن تفعل أي شيء مع معرف العملية. لإنهاء العملية ، على سبيل المثال ، استخدم:

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

كما لوحظ في مكان آخر: استخدم netstat ، مع مفاتيح التبديل المناسبة ، ثم قم بتصفية النتائج مع العثور على [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 /?
19
EndUzr
netstat -a -n | find /c "10.240.199.9:8080"

سوف يمنحك عدد مآخذ نشطة على عنوان IP ومنفذ معين (رقم منفذ الخادم)

8
Uday Singh

بالنسبة لمستخدم Windows 8: افتح موجه الأوامر ، اكتب netstat -an | العثور على "رقم المنفذ الخاص بك" ، أدخل.

إذا كان الرد مثلالاستماعثم المنفذ قيد الاستخدام ، وإلا فإنه مجاني.

5
Pratik Roy

لتحسين @ EndUzr استجابة :

للعثور على منفذ خارجي (IPv4 أو IPv6) ، يمكنك استخدام:

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

للعثور على منفذ محلي (IPv4 أو IPv6) ، يمكنك استخدام:

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

حيث N هو رقم المنفذ الذي تهتم به. يخبرك رمز التبديل "/ r" بمعالجته كـ regexp. يسمح رمز التبديل "/ c" لـ findstr بتضمين مسافات ضمن سلاسل البحث بدلاً من التعامل مع المساحة كمحدد لسلسلة البحث. تمنع هذه المساحة المضافة من إساءة استخدام المنافذ الأطول - على سبيل المثال ، ": 80" مقابل ": 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 *[^ ]*:[^ ]*"
2
shawn

بالنسبة للمنفذ 80 ، سيكون الأمر: netstat -an | ابحث عن "80" بالنسبة للمنفذ n ، سيكون الأمر: netstat -an | العثور على "ن"

هنا ، netstat هو التعليمات لجهازك

-a: يعرض جميع الاتصالات ومنافذ الاستماع - n: يعرض جميع العناوين والإرشادات بتنسيق رقمي (هذا مطلوب لأن الإخراج من -a يمكن أن يحتوي على أسماء الأجهزة)

ثم ، أمر العثور على "مطابقة النقش" إخراج الأمر السابق.

1
subodhkarwa