উইন্ডোজের কোনও বন্দরে কোন প্রক্রিয়াটি শুনছে তা আপনি কীভাবে আবিষ্কার করতে পারেন?


2270

উইন্ডোজের কোনও বন্দরে কোন প্রক্রিয়াটি শুনছে তা আপনি কীভাবে আবিষ্কার করতে পারেন?


3
Currports একটি হাতিয়ার যে খুব + + ফিল্টার অনুসন্ধান সাহায্য করে nirsoft.net/utils/cports.html
নীল মেঘ

1
ইন্টেলিজজের অধীনে টমক্যাটটি ডিবাগ মোডে চালানোর চেষ্টা করার সময় আমি এটির মধ্যে দৌড়ে এসেছি, আমার পক্ষে সেরা সমাধানটি "সকেট" থেকে ডিবাগ পরিবহন কনফিগারেশন (ফাইল-> সেটিংস-> বিল্ড / উদাহরণ / স্থাপনা-> ডিবাগার) পরিবর্তন করে চলেছে to "ভাগ করা মেমরি".
TMN

উত্তর:


2616

নতুন উত্তর, পাওয়ারশেল

Get-Process -Id (Get-NetTCPConnection -LocalPort portNumber).OwningProcess

পুরানো উত্তর, সেন্টিমিটার

 C:\> netstat -a -b

( হোস্ট-নেমগুলি সমাধান করার চেষ্টা করে এটি থামাতে অ্যাড- এন , এটি এটি আরও দ্রুত তৈরি করবে))

টিসিপিভিউয়ের জন্য ডেনের পরামর্শ নোট করুন । এটি দেখতে খুব দরকারী!

- সমস্ত সংযোগ এবং শ্রবণ পোর্ট প্রদর্শন করে।

-b প্রতিটি সংযোগ তৈরি বা শ্রবণ পোর্ট তৈরিতে জড়িত এক্সিকিউটেবলকে প্রদর্শন করে। কিছু ক্ষেত্রে সুপরিচিত এক্সিকিউটেবল একাধিক স্বতন্ত্র উপাদান হোস্ট করে এবং এই ক্ষেত্রে সংযোগ বা শ্রবণ পোর্ট তৈরিতে জড়িত উপাদানগুলির ক্রম প্রদর্শিত হয়। এক্ষেত্রে এক্সিকিউটেবল নামটি নীচে নীচে [] থাকে, শীর্ষে এটি বলা হয় এমন উপাদান এবং তাই টিসিপি / আইপি না পৌঁছানো পর্যন্ত। মনে রাখবেন যে এই বিকল্পটি সময় সাশ্রয়ী হতে পারে এবং আপনার পর্যাপ্ত অনুমতি না থাকলে ব্যর্থ হবে।

-n সংখ্যা আকারে ঠিকানা এবং পোর্ট সংখ্যা প্রদর্শন করে।

-ও প্রতিটি সংযোগের সাথে সম্পর্কিত মালিকানাধীন প্রক্রিয়া আইডি প্রদর্শন করে।



121
এবং যথাযথ / এফ ব্যবহার করে প্রক্রিয়াটি শেষ করতে টাস্কিল / পিআইডি <পিড>>
বিটমাস্ক 777

81
আপনাকে প্রশাসক হিসাবে আপনার কমান্ড লাইন শেলটি চালাতে হতে পারে, অন্যথায় আপনি অপর্যাপ্ত সুযোগ-সুবিধা সম্পর্কে ত্রুটি বার্তা পেতে পারেন। Cmd.exe ডান ক্লিক করার সময় "প্রশাসক হিসাবে চালান" বিকল্পটি ব্যবহার করুন।
গ্রুবার

6
কাজ করে তবে উন্নত অনুমতি প্রয়োজন। শিফট + কমান্ড আইকনে ডান ক্লিক করুন -> প্রশাসক হিসাবে চালান
খ্রিস্টান বনজিওর্নো

18
পিআইডি পেয়েছে - আসুন এটি বলা যাক 1234- তবে আপনি tasklist /fi "pid eq 1234"প্রক্রিয়াটির নাম এবং অন্যান্য বিবরণ সন্ধান করতে ব্যবহার করতে পারেন ।
স্টিভ চেম্বারস

2201

উইন্ডোজের জন্য একটি নেটিভ জিইউআই রয়েছে:

  • স্টার্ট মেনু → সমস্ত প্রোগ্রামআনুষাঙ্গিকসিস্টেম সরঞ্জামরিসোর্স মনিটর

বা রান করুন resmon.exe , বা টাস্ক ম্যানেজারের পারফরম্যান্স ট্যাব থেকে।

এখানে চিত্র বিবরণ লিখুন


41
বাইন্ডিংয়ের ফায়ারওয়াল স্থিতি (শেষ কলাম )ও দেখায়। খুব ব্যবহার।
রাফেল

8
এটি চালানোর জন্য আপনাকে প্রশাসক হতে হবে (বা সেই গোষ্ঠীতে)।
কৃষপ্রকাশ

2
@ বিসিআরসো, " অনির্ধারিত ঠিকানার " সাথে আবদ্ধ হওয়ার অর্থ কী?
পেসারিয়ার

5
কমপক্ষে উইন্ডোজ 10 এ, টাস্ক ম্যানেজারের পারফরম্যান্স ট্যাব থেকেও চালু করা যেতে পারে (অন্য সংস্করণগুলি পরীক্ষা করে
ম্যাথিউ কে।

10
উপরের @ ব্যবহারকারীর 38836454 এর মন্তব্য সঠিক নয়: রিসোর্স মনিটর এই বন্দরগুলির সাথে কোনও নেটওয়ার্ক সংযোগ না থাকলেও শ্রোতাদের সাথে বন্দরগুলি দেখায়। "টিসিপি সংযোগগুলি" বিভাগের পরিবর্তে কেবল "শ্রবণ পোর্টগুলি" বিভাগটি দেখুন।
Jpsy

235

আপনি যদি এর জন্য জিইউআই চান তবে টিসিপিভিউ ব্যবহার করুন । এটি মাইক্রোসফ্ট কেনা পুরানো সাইনস্টিনালস অ্যাপ্লিকেশন।


9
এটি আমার সেরা বিকল্প অনুসারে, বিশেষত যেহেতু সমস্ত প্রক্রিয়া একই তালিকায় রয়েছে এবং আপনি ডান ক্লিক করে সরাসরি প্রক্রিয়াগুলি বন্ধ করতে পারেন।
আন্দ্রে লন্ডগ্রেন

8
এছাড়াও, এডমিন privelges প্রয়োজন হয় না!
জানাক মীনা

222

উইন্ডোজ জন্য:

netstat -aon | find /i "listening"

25
+1 তবে মনে রাখবেন, যদি আপনার উইন্ডোজগুলি ইংরাজী ব্যতীত অন্য কোনও ভাষায় চলতে থাকে তবে আপনাকে "শ্রবণের" স্থানীয় শব্দটি পরিবর্তন করতে হবে। যেমন netstat -aon | find /i "abhören"জার্মানির জন্য।
লেবিট

2
আমার ক্ষেত্রে এটি কার্যকর হয়নি কোট সাইন এর কারণে, তবে সমাধান নেটস্ট্যাট -আওন | সন্ধানের তালিকা নিখুঁতভাবে কাজ করে!
গডফাদার

এটি উন্নত সুবিধাগুলি যাতে উপরে উন্নীত করা প্রয়োজন ছাড়াই কাজ করে।
ভ্লাদ শ্নাকোভস্কি

1
পাওয়ারশেলের সাহায্যে ডাব্লু 10 15063.729 এ এই কমান্ডটি চালানোর চেষ্টা করার সময় আমি একটি ত্রুটি পেয়েছি:FIND: Parameter format not correct
নিক ম্যানারিন

1
এই উত্তরটি কীভাবে "উইন্ডোজের কোনও বন্দরে কোন প্রক্রিয়া [নাম] শুনছে?" এর সাথে প্রাসঙ্গিক?
পাভেল সিওচ

137

বেশিরভাগ উত্তরে উল্লিখিত-বি সুইচটির জন্য আপনাকে মেশিনে প্রশাসনিক সুবিধাগুলি থাকা দরকার। প্রক্রিয়াটির নাম পেতে আপনার সত্যিকারের উন্নত অধিকারের দরকার নেই!

বন্দর নম্বরটিতে চলমান প্রক্রিয়াটির পিডটি সন্ধান করুন (যেমন, 8080)

netstat -ano | findStr "8080"

পিডের মাধ্যমে প্রক্রিয়াটির নামটি সন্ধান করুন

tasklist /fi "pid eq 2216"

টিসিপি / আইপি পোর্ট দ্বারা প্রক্রিয়া সন্ধান করুন


82

আপনি নিম্নলিখিত কমান্ডটি চালালে আপনি আরও তথ্য পেতে পারেন:

netstat -aon | find /i "listening" |find "port"

'Find' কমান্ড ব্যবহারের ফলে আপনি ফলাফলগুলি ফিল্টার করতে পারবেন। find /i "listening"'শ্রবণকারী' কেবল পোর্টগুলি প্রদর্শন করবে। দ্রষ্টব্য, আপনার /iকেসটি উপেক্ষা করার দরকার আছে , অন্যথায় আপনি "তালিকাবদ্ধ" সন্ধান করতে চান। | find "port"ফলাফলগুলিকে কেবল নির্দিষ্ট পোর্ট নম্বর থাকাতে সীমাবদ্ধ করবে। দ্রষ্টব্য, এর উপর এটি প্রতিক্রিয়া স্ট্রিংয়ের যে কোনও জায়গায় পোর্ট নম্বর রয়েছে এমন ফলাফলগুলিতেও ফিল্টার করবে।


8
FWIW পাওয়ারশেল v2.0 এ এটি চালানোর চেষ্টা করে ত্রুটি দেয় FIND: Parameter format not correct। সন্ধানের মাপদণ্ডের পরে আপনাকে একটি স্থান যুক্ত করতে হবে। এটি আপনাকে ছেড়ে চলে যাবে netstat -aon | find /i "listening" | find "1234 "
স্ব।

2
উপরে "পোর্ট" আপনার পোর্ট দিয়ে প্রতিস্থাপন করুন, প্রাক্তন "5000"
jbooker

1
@self। পাইপের পরে স্থান যুক্ত করার পরেও আমি PS 5.1 এর সাথে ত্রুটিটি পেয়েছি। তুমি কি জানো কি হচ্ছে?
নিক ম্যানারিন

2
@ নিকমেনারিনিন এবং @ নিজেই প্রথমে পাওয়ারশেল থেকে সেন্টিমিডিতে পরিবর্তন করুন (কেবল সিএমডি টাইপ করুন এবং কমান্ডটি পুনরায় প্রেরণ করুন) বা পাওয়ারশেলে পরিবর্তে এই কমান্ডটি ব্যবহার করুন: নেটস্ট্যাট -আওন | সন্ধান / আমি {back tick}"শ্রবণ {back tick}" "| সন্ধান" {back tick}"পোর্ট {back tick}" "(<- পালিয়ে যাওয়া উক্তিগুলি নোট করুন - শব্দটি ক্ষমা করুন back tickকারণ আমি আসল চরিত্রটিকে এড়িয়ে চলা ভাবা হিসাবে এটি যুক্ত করতে পারি না)
ত্রিস্তান ভ্যান ড্যাম

72
  1. কমান্ড প্রম্পট উইন্ডোটি খুলুন (প্রশাসক হিসাবে) "স্টার্ট \ সার্চ বক্স" এন্টার "সেন্টিমিডি" থেকে তারপরে "সেমিডি.এক্সে" -তে ডান ক্লিক করুন এবং "প্রশাসক হিসাবে চালান" নির্বাচন করুন

  2. নীচের পাঠ্যটি প্রবেশ করুন তারপরে এন্টার টিপুন।

    netstat -abno

    - সমস্ত সংযোগ এবং শ্রবণ পোর্ট প্রদর্শন করে।

    -b প্রতিটি সংযোগ তৈরি বা শ্রবণ পোর্ট তৈরিতে জড়িত এক্সিকিউটেবলকে প্রদর্শন করে। কিছু ক্ষেত্রে সুপরিচিত এক্সিকিউটেবল একাধিক স্বতন্ত্র উপাদান হোস্ট করে এবং এই ক্ষেত্রে সংযোগ বা শ্রবণ পোর্ট তৈরিতে জড়িত উপাদানগুলির ক্রম প্রদর্শিত হয়। এক্ষেত্রে এক্সিকিউটেবল নামটি নীচে নীচে [] থাকে, শীর্ষে এটি বলা হয় এমন উপাদান এবং তাই টিসিপি / আইপি না পৌঁছানো পর্যন্ত। মনে রাখবেন যে এই বিকল্পটি সময় সাশ্রয়ী হতে পারে এবং আপনার পর্যাপ্ত অনুমতি না থাকলে ব্যর্থ হবে।

    -n সংখ্যা আকারে ঠিকানা এবং পোর্ট সংখ্যা প্রদর্শন করে।

    -ও প্রতিটি সংযোগের সাথে সম্পর্কিত মালিকানাধীন প্রক্রিয়া আইডি প্রদর্শন করে।

  3. "স্থানীয় ঠিকানা" এর অধীনে আপনি যে বন্দরটি শুনছেন সেটি সন্ধান করুন

  4. প্রক্রিয়া নামটি সরাসরি তার অধীনে দেখুন।

দ্রষ্টব্য: টাস্ক ম্যানেজারের অধীনে প্রক্রিয়াটি সন্ধান করা

  1. আপনি যে পোর্টটি দেখছেন তার পাশের পিআইডি (প্রক্রিয়া শনাক্তকারী) নোট করুন।

  2. উইন্ডোজ টাস্ক ম্যানেজার খুলুন।

  3. প্রক্রিয়া ট্যাব নির্বাচন করুন।

  4. আপনি যখন পিআইডি-র লক্ষ করেছেন তখন সন্ধান করুন যখন আপনি পদক্ষেপ 1 এ নেটস্যাটটি করেছিলেন।

    • আপনি যদি পিআইডি কলাম না দেখেন, দেখুন / নির্বাচন করুন কলামগুলিতে ক্লিক করুন। পিআইডি নির্বাচন করুন।

    • নিশ্চিত হয়ে নিন যে "সমস্ত ব্যবহারকারীর কাছ থেকে প্রক্রিয়াগুলি দেখান" নির্বাচন করা হয়েছে।


56

পিআইডি এবং চিত্রের নাম পান

শুধুমাত্র একটি আদেশ ব্যবহার করুন:

for /f "tokens=5" %a in ('netstat -aon ^| findstr 9000') do tasklist /FI "PID eq %a"

যেখানে 9000আপনার পোর্ট নম্বর দ্বারা প্রতিস্থাপন করা উচিত।

আউটপুট ভালো কিছু থাকতে হবে:

Image Name                     PID Session Name        Session#    Mem Usage
========================= ======== ================ =========== ============
java.exe                      5312 Services                   0    130,768 K

ব্যাখ্যা:

  • এটি নিম্নলিখিত কমান্ডের আউটপুট থেকে প্রতিটি লাইনে পুনরাবৃত্তি করে:

    netstat -aon | findstr 9000
    
  • প্রতিটি লাইন থেকে, পিআইডি ( %a- নামটি এখানে গুরুত্বপূর্ণ নয়) বের করা হয় (পিআইডি সেই লাইনের 5তম উপাদান) এবং নিম্নলিখিত কমান্ডে প্রেরণ করা হয়

    tasklist /FI "PID eq 5312"
    

যদি আপনি চাই প্রতি লাফালাফি হেডার এবং ফেরত কম্যান্ড প্রম্প্ট , আপনি ব্যবহার করতে পারেন:

echo off & (for /f "tokens=5" %a in ('netstat -aon ^| findstr 9000') do tasklist /NH /FI "PID eq %a") & echo on

আউটপুট:

java.exe                      5312 Services                   0    130,768 K

2
উত্তম উত্তর, তবে আপনার এটি পরিবর্তন করা উচিত findstr :9000যদি না হয় তবে আপনি এমন অ্যাপ্লিকেশনগুলিও খুঁজে পাবেন যাতে সংখ্যাটি থাকে (উদাহরণস্বরূপ আপনি যখন "80" অনুসন্ধান করেন তখন আপনি ৮০, ৮০০, ৮০০০ বন্দরেও অ্যাপস খুঁজে পাবেন)।
Radon8472

48

প্রথমে আমরা সেই নির্দিষ্ট কাজের প্রক্রিয়া আইডি পাই যা আমাদের বন্দরটি মুক্ত করার জন্য অপসারণ করতে হবে:

আদর্শ

netstat -n -a -o

উইন্ডোজ কমান্ড লাইন প্রম্পটে (সেন্টিমিটার) এই কমান্ডটি কার্যকর করার পরে, শেষ কলামটি মনে করি সেই পিডটি নির্বাচন করুন। মনে করুন এটি 3312।

এখন টাইপ করুন

taskkill /F /PID 3312

আপনি এখন netstatকমান্ডটি টাইপ করে চেক ক্রস করতে পারেন ।

দ্রষ্টব্য: কখনও কখনও উইন্ডোজ আপনাকে এই কমান্ডটি সরাসরি সিএমডিতে চালানোর অনুমতি দেয় না, তাই প্রথমে আপনাকে এই পদক্ষেপগুলি নিয়ে যেতে হবে:

শুরু মেনু থেকে -> কমান্ড প্রম্পট (কমান্ড প্রম্পটে ডান ক্লিক করুন, এবং প্রশাসক হিসাবে চালানো)


30

প্রতিটি সংযোগের সাথে সম্পর্কিত সমস্ত মালিকানাধীন প্রক্রিয়া আইডির একটি তালিকা পেতে:

netstat -ao |find /i "listening"

যে কোনও প্রক্রিয়াটি হত্যা করতে চাইলে আইডি রয়েছে এবং এই আদেশটি ব্যবহার করুন, যাতে পোর্টটি বিনামূল্যে হয়

Taskkill /F /IM PID of a process

1
এটি ইউডিপি পোর্টগুলি শোনার জন্য অ্যাকাউন্ট করে না
ইভানড্রিক্স

27

উইন্ডোজের একটি পিআইডি থেকে পোর্ট নম্বর পাওয়া খুব সহজ।

নিম্নলিখিত পদক্ষেপগুলি হল:

  1. চালাতে যান → টাইপ সিএমডি → টিপুন Enter

  2. নিম্নলিখিত আদেশটি লিখুন ...

    netstat -aon | findstr [port number]
    

    (দ্রষ্টব্য: বর্গাকার বন্ধনী অন্তর্ভুক্ত করবেন না))

  3. টিপুন Enter...

  4. তারপরে সিএমডি আপনাকে পিআইডি সহ সেই বন্দরে চলমান পরিষেবাটির বিশদ জানাবে।

  5. টাস্ক ম্যানেজারটি খুলুন এবং পরিষেবা ট্যাবে হিট করুন এবং সিআইডি এর সাথে পিআইডি মেলে, এবং এটি।


18

কেবল একটি কমান্ড শেল খুলুন এবং টাইপ করুন (আপনার পোর্টটি 123456 বলে):

netstat -a -n -o | find "123456"

আপনার প্রয়োজনীয় সমস্ত কিছুই আপনি দেখতে পাবেন।

শিরোনামগুলি হ'ল:

 Proto  Local Address          Foreign Address        State           PID
 TCP    0.0.0.0:37             0.0.0.0:0              LISTENING       1111

এটি এখানে উল্লেখ করা হয়েছে


1
এফওয়াইআই / আগ্রহী প্রত্যেকের জন্য: এটি হয় findstr 123456(কোট ছাড়াই) অথবা find "123456"(কোট সহ)। (@ জোশ)
কেভিন ক্রুইজসেন

18

কোন নির্দিষ্ট প্রক্রিয়া (পিআইডি) কোন বন্দর ব্যবহার করছে তা সন্ধানের জন্য:

netstat -anon | findstr 1234

যেখানে 1234 আপনার প্রক্রিয়াটির পিআইডি। [আপনার অ্যাপ্লিকেশনটির পিআইডি জানতে টাস্ক ম্যানেজার → পরিষেবাদি / প্রক্রিয়া ট্যাবে যান tab]


1
এটি লক্ষ করা উচিত যে আপনার -nদুটিবার পতাকা সেট লাগবে না । -anoযথেষ্ট।
mwieczorek

16

উইন্ডোজ 10 বা উইন্ডোজ সার্ভার 2016 এ পাওয়ারশেল 5 দিয়ে, Get-NetTCPConnectionসেমিডলেট চালান । আমার ধারণা, এটি উইন্ডোজের পুরানো সংস্করণগুলিতেও কাজ করা উচিত।

এর ডিফল্ট আউটপুটটি Get-NetTCPConnectionকোনও কারণে প্রক্রিয়া আইডি অন্তর্ভুক্ত করে না এবং এটি কিছুটা বিভ্রান্তিকর। যাইহোক, আপনি সর্বদা আউটপুট ফর্ম্যাট করে এটি পেতে পারেন। আপনি যে সম্পত্তিটি অনুসন্ধান করছেন তা হ'ল OwningProcess

  • 443 পোর্টে যে প্রক্রিয়াটি শোনার প্রক্রিয়াটির আইডিটি জানতে চান, এই আদেশটি চালান:

    PS C:\> Get-NetTCPConnection -LocalPort 443 | Format-List
    
    LocalAddress   : ::
    LocalPort      : 443
    RemoteAddress  : ::
    RemotePort     : 0
    State          : Listen
    AppliedSetting :
    OwningProcess  : 4572
    CreationTime   : 02.11.2016 21:55:43
    OffloadState   : InHost
    
  • আপনি যে বৈশিষ্ট্যগুলির সন্ধান করছেন তার সাথে একটি টেবিলের আউটপুট ফর্ম্যাট করুন:

    PS C:\> Get-NetTCPConnection -LocalPort 443 | Format-Table -Property LocalAddress, LocalPort, State, OwningProcess
    
    LocalAddress LocalPort  State OwningProcess
    ------------ ---------  ----- -------------
    ::                 443 Listen          4572
    0.0.0.0            443 Listen          4572
    
  • আপনি যদি প্রক্রিয়াটির নাম জানতে চান তবে এই কমান্ডটি চালান:

    PS C:\> Get-Process -Id (Get-NetTCPConnection -LocalPort 443).OwningProcess
    
    Handles  NPM(K)    PM(K)      WS(K)     CPU(s)     Id  SI ProcessName
    -------  ------    -----      -----     ------     --  -- -----------
    143      15     3448      11024              4572   0 VisualSVNServer
    


13

কমান্ডটি টাইপ করুন: netstat -aon | findstr :DESIRED_PORT_NUMBER

উদাহরণস্বরূপ, আমি 80 বন্দরটি খুঁজতে চাইলে: netstat -aon | findstr :80

এই উত্তরটি মূলত এই প্রশ্নটিতে পোস্ট করা হয়েছিল ।


11

netstat:

  • -a সমস্ত সংযোগ এবং শ্রবণ পোর্ট প্রদর্শন করে
  • -b এক্সিকিউটেবল প্রদর্শন করে
  • - সমাধানের হোস্টনাম (সংখ্যার ফর্ম) বন্ধ করুন
  • - মালিকানার প্রক্রিয়া

    netstat -bano | findstr "7002"
    
    netstat -ano > ano.txt 
    

Currports টুল অনুসন্ধান ও ফিল্টার করতে সাহায্য করে


11
  1. কমান্ড প্রম্পটটি খুলুন - → রানcmd, বা মেনু শুরু করুন Prog সমস্ত প্রোগ্রামআনুষাঙ্গিককমান্ড প্রম্পট

  2. আদর্শ

    netstat -aon | findstr '[port_number]'
    

[port_number]আপনি চেক করতে এবং হিট করতে চান এমন প্রকৃত পোর্ট নম্বরটি এর সাথে প্রতিস্থাপন করুন Enter

  1. যদি কোনও অ্যাপ্লিকেশন দ্বারা বন্দর ব্যবহার করা হয়, তবে সেই অ্যাপ্লিকেশনটির বিশদটি প্রদর্শিত হবে। তালিকার শেষ কলামে প্রদর্শিত নম্বরটি হ'ল সেই অ্যাপ্লিকেশনটির পিআইডি (প্রক্রিয়া আইডি)। এটি নোট করুন।
  2. আদর্শ

    tasklist | findstr '[PID]'
    

[PID]উপরের পদক্ষেপটি দিয়ে নম্বরটি প্রতিস্থাপন করুন এবং হিট করুন Enter

  1. আপনাকে আপনার অ্যাপ্লিকেশন নামটি দেখানো হবে যা আপনার পোর্ট নম্বর ব্যবহার করছে।

3
উইন 10-তে: আপনি পদক্ষেপ 2 এবং 4 য় পদক্ষেপে কমান্ড কার্যকর হবে না যদি আপনি ডাবল কোট দ্বারা সরল উদ্ধৃতিগুলি প্রতিস্থাপন করেন। নেটস্প্যাট বলতে হবে -আওন | সন্ধানকারী "[পোর্ট_নিবার]"
লিওনার্দো লোপেজ

এই সমাধানের জন্য কোনও উন্নত অনুমতির প্রয়োজন নেই। Tks!
টোটালিস

10

netstat -aoএবং netstat -abআপনাকে অ্যাপ্লিকেশনটি জানান, তবে আপনি যদি সিস্টেম প্রশাসক না হন তবে আপনি "অনুরোধ করা অপারেশনটির উন্নতির প্রয়োজন" পাবেন।

এটি আদর্শ নয়, তবে যদি আপনি সিন্সটার্নালসের প্রসেস এক্সপ্লোরার ব্যবহার করেন তবে আপনি নির্দিষ্ট প্রসেসের বৈশিষ্ট্যগুলিতে যেতে পারেন এবং টিসিপি ট্যাবটি দেখে আপনার আগ্রহী বন্দরটি ব্যবহার করছেন কিনা তা দেখুন এটি একটি সুই এবং খড়ের ছিটে কিছুটা জিনিস, তবে সম্ভবত এটি কাউকে সাহায্য করবে ...


আপনি যদি প্রশাসক না হন তবে প্রসেস এক্সপ্লোরার (বা এমনকি উইন্ডোজ টাস্ক ম্যানেজার> রিসোর্স ম্যানেজার) আপনি যে কোনও প্রক্রিয়া শুরু করবেন না তা থেকে এই তথ্যটি পেতে পেতে সক্ষম হবেন না।
আবেল

9

আমি নিরসফ্ট থেকে কারআরপোর্টের প্রস্তাব দিই।

কারআরপোর্টগুলি প্রদর্শিত ফলাফলগুলি ফিল্টার করতে পারে। টিসিপিভিউতে এই বৈশিষ্ট্যটি নেই।

দ্রষ্টব্য: আপনি কোনও প্রক্রিয়াটির সকেট সংযোগটি ডান ক্লিক করতে পারেন এবং "নির্বাচিত টিসিপি সংযোগগুলি বন্ধ করুন" নির্বাচন করতে পারেন (আপনি এটি টিসিপিভিউতেও করতে পারেন)। ভিপিএনগুলি স্যুইচ করার পরে এটি প্রায়শই আমার সাথে আউটলুক এবং ল্যাঙ্কের সাথে সংযোগের সমস্যার সমাধান করে। কারআরপোর্টস সহ আপনি কমান্ড লাইন থেকে "/ বন্ধ" পরামিতি সংযোগ বন্ধ করতে পারেন।


7

একটি একক লাইন সমাধান যা আমাকে সাহায্য করে। আপনার বন্দরের সাথে কেবল 3000 টি বিকল্প দিন:

$P = Get-Process -Id (Get-NetTCPConnection -LocalPort 3000).OwningProcess; Stop-Process $P.Id

সম্পাদনা করুন: আরও পাওয়ারশেলের মতো ভাষার জন্য পরিবর্তিত killহয়েছেStop-Process


6
আপনি সম্ভবত প্রক্রিয়াটি স্বয়ংক্রিয়ভাবে হত্যা করতে চান না। আমি সেই হত্যার আদেশটি আলাদা করে ব্যাখ্যা করব। সাবধানতার সাথে চিন্তা না করে কিছু দরিদ্র ব্যবহারকারীর কপি-পেস্ট করা চাই না।
টিঙ্কারটেনারসফটওয়্যারগুই

1
এবং আপনি যদি পুরো পাওয়ারশেল সমাধানের পরিবর্তনের জন্য যান তবে স্টপ-প্রসেসে হত্যার চেষ্টা করুন Get-Process -Id (Get-NetTCPConnection -LocalPort 3000).OwningProcess | Stop-Process
কিউবানেক্স

6

এই সরঞ্জামগুলি অনুসরণ করুন: থেকে cmd কমান্ড : C:\> netstat -anobসঙ্গে প্রশাসক বিশেষাধিকার।

প্রক্রিয়া এক্সপ্লোরার

প্রক্রিয়া ডাম্প

বন্দর মনিটর

সমস্ত sysinternals.com থেকে।

আপনি যদি প্রতিটি প্রক্রিয়াটির অধীনে প্রক্রিয়া চলমান এবং থ্রেডগুলি জানতে চান তবে আমি সে সম্পর্কে শিখতে চাই wmic। এটি একটি দুর্দান্ত কমান্ড-লাইন সরঞ্জাম, যা আপনাকে জানার চেয়ে অনেক বেশি দেয়।

উদাহরণ:

c:\> wmic process list brief /every:5

উপরের কমান্ডটি প্রতি 5 সেকেন্ডে সংক্ষেপে একটি সমস্ত প্রক্রিয়া তালিকা প্রদর্শন করবে। আরও জানতে, আপনি কেবল /?উইন্ডোজের কমান্ড দিয়ে যেতে পারেন , উদাহরণস্বরূপ,

c:\> wmic /?
c:\> wmic process /?
c:\> wmic prcess list /?

এবং তাই এবং তাই ঘোষণা. :)


6

ব্যবহার করুন:

netstat -a -o

এটি কোনও নির্দিষ্ট বন্দরে প্রক্রিয়াটির পিআইডি দেখায়।

প্রক্রিয়া আইডি মাথায় রাখুন এবং টাস্ক ম্যানেজার এবং পরিষেবাগুলি বা বিশদ ট্যাবে যান এবং একই পিআইডি থাকা প্রক্রিয়াটি শেষ করুন end

সুতরাং আপনি উইন্ডোজ একটি নির্দিষ্ট বন্দরে চলমান একটি প্রক্রিয়া হত্যা করতে পারেন।


6

পাওয়ারশেল ব্যবহারকারীদের জন্য, চেষ্টা করুন Get-NetworkStatistics:

> Get-NetworkStatistics | where Localport -eq 8000


ComputerName  : DESKTOP-JL59SC6
Protocol      : TCP
LocalAddress  : 0.0.0.0
LocalPort     : 8000
RemoteAddress : 0.0.0.0
RemotePort    : 0
State         : LISTENING
ProcessName   : node
PID           : 11552


5

পাওয়ারশেল ব্যবহার করে ... ... এটি আপনার বন্ধু হবে (আপনার পোর্ট নম্বরটি দিয়ে 8080 প্রতিস্থাপন করুন):

 netstat -abno | Select-String -Context 0,1 -Pattern 8080

নমুনা আউটপুট

>   TCP    0.0.0.0:8080           0.0.0.0:0              LISTENING         2920
   [tnslsnr.exe]
>   TCP    [::]:8080              [::]:0                 LISTENING         2920
   [tnslsnr.exe]

সুতরাং এই উদাহরণে tnslsnr.exe (OracleXE ডাটাবেস) 8080 পোর্টে শুনছে।

দ্রুত ব্যাখ্যা

  • Select-Stringnetstatপ্রাসঙ্গিক লাইনের জন্য দীর্ঘ আউটপুট ফিল্টার করতে ব্যবহৃত হয় ।
  • -Pattern নিয়মিত অভিব্যক্তির বিপরীতে প্রতিটি লাইন পরীক্ষা করে।
  • -Context 0,1 প্রতিটি প্যাটার্ন ম্যাচের জন্য 0 শীর্ষস্থানীয় লাইন এবং 1 টি ট্রেলিং লাইন আউটপুট দেয়।

2

উইন্ডোজের জন্য, আপনি যদি 1234 পোর্টের সাথে শোনার সামগ্রী বা কানেক্ট করার সন্ধান করতে চান, তবে সেন্টিমিডি প্রম্পটে নিম্নলিখিতটি সম্পাদন করুন:

netstat -na | find "1234"

1

নীচের ব্যাচ স্ক্রিপ্টটি ব্যবহার করুন যা একটি প্রক্রিয়া নামটিকে আর্গুমেন্ট হিসাবে গ্রহণ করে এবং netstatপ্রক্রিয়াটির জন্য আউটপুট দেয় ।

@echo off
set procName=%1
for /f "tokens=2 delims=," %%F in ('tasklist /nh /fi "imagename eq %1" /fo csv') do call :Foo %%~F
goto End

:Foo
set z=%1
echo netstat for : "%procName%" which had pid "%1"
echo ----------------------------------------------------------------------

netstat -ano |findstr %z%
goto :eof

:End

1

তথ্য এবং হত্যা সহ উত্তরের উপর ভিত্তি করে , আমার জন্য তাদের এক কমান্ডে একত্রিত করা কার্যকর । এবং প্রদত্ত বন্দর শোনার প্রক্রিয়া সম্পর্কে তথ্য পেতে আপনি এটি সিএমডি থেকে চালাতে পারেন (উদাহরণস্বরূপ 8080):

for /f "tokens=3 delims=LISTENING" %i  in ('netstat -ano ^| findStr "8080" ^| findStr "["') do @tasklist /nh /fi "pid eq %i"

অথবা আপনি যদি এটি হত্যা করতে চান:

for /f "tokens=3 delims=LISTENING" %i  in ('netstat -ano ^| findStr "8080" ^| findStr "["') do @Taskkill /F /IM %i

আপনি এই কমান্ডটি কোনও ব্যাট ফাইলে রাখতে পারেন (সেগুলি কিছুটা আলাদা হবে - এর %iজন্য প্রতিস্থাপন করুন %%i):

ফাইল portInfo.bat

for /f "tokens=3 delims=LISTENING" %%i  in (
    'netstat -ano ^| findStr "%1" ^| findStr "["'
) do @tasklist /nh /fi "pid eq %%i"

ফাইল portKill.bat

for /f "tokens=3 delims=LISTENING" %%i  in (
    'netstat -ano ^| findStr "%1" ^| findStr "["'
) do @Taskkill /F /IM %%i

তারপরে আপনি সেন্টিমিডি থেকে আপনি এটি করতে পারেন:

portInfo.bat 8080

অথবা

portKill.bat 8080


1
এটি একটি দরকারী স্ক্রিপ্ট হতে পারে। তবে, আমি এটি ভাগ্যক্রমে সিএমডি পাশাপাশি পাওয়ারশেল 6-তে চেষ্টা করেছি tried সম্ভবত আপনি আরও কিছু বিশদ সরবরাহ করে আপনার উত্তরটি উন্নত করতে পারেন।
ম্যানফ্রেড

প্রথম অংশ কাজ করছে? "ব্যাট" নিয়েই কি সমস্যা? ভেরিয়েবলগুলি পাস করার ক্ষেত্রে কিছু পার্থক্য রয়েছে: (%% i)
lczapski

@Manfred আমি উদাহরণস্বরূপ 3 বিভিন্ন উইন্ডোজ 10. এই চেষ্টা করেছি .\portInfo.bat 800PowerShell এটা মত এই কিছু করা উচিত:C:\work>for /F "tokens=3 delims=LISTENING" %i in ('netstat -ano | findStr "800" | findStr "["') do (tasklist /fi "pid eq %i" ) C:\work>(tasklist /fi "pid eq 4" ) Image Name PID Session Name Session# Mem Usage ========================= ======== ================ =========== ============ System 4 Services 0 1,820 K
lczapski

দুঃখিত, ভাগ্য নেই। আমি সেই কমান্ডটি একটি পাওয়ার portInfo.batশেল টার্মিনাল নামক একটি ফাইলে রেখেছিলাম, তারপরে মৃত্যুদন্ড কার্যকর করা হয় .\portInfo.bat 8080। আউটপুটটি ছিল ব্যাচের ফাইলের বিষয়বস্তু। খুব ভাল সমস্যা আমি কিছু উপেক্ষা করছি। দ্রষ্টব্য, আমি উইন্ডোজ ১০ এ পাওয়ারশেল 6.২.৩ ব্যবহার করছি। আমি এটি নিয়মিত কমান্ড প্রম্পটেও চেষ্টা করেছি, তবে ফলাফলটি একই ছিল: স্ক্রিপ্টের সামগ্রীর আউটপুট। আমি নিশ্চিত যে এই কাজটি করার জন্য আমি একটি অতি গুরুত্বপূর্ণ তথ্য মিস করছি।
ম্যানফ্রেড

1
কেন যোগ /nh: @tasklist /nh /fi "pid eq %i"? এবং ঠিক দরজা:Findstr ":8080"
এটা আমার ছিল না

0

আমার ক্ষেত্রে বন্দরটি (3000) মোটেই ব্যবহৃত হয়নি এবং নেটস্পটে দৃশ্যমান ছিল না। কিন্ত! উইন্ডোজের জন্য আনইনস্টলার ডকার বিষয়টি সমাধান করেছেন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.