it-swarm.asia

كيف تقتل العملية التي تستخدم حاليًا منفذًا على مضيف محلي في windows؟

كيفية إزالة العملية الحالية/التطبيق الذي تم تعيينه بالفعل إلى منفذ؟

على سبيل المثال: localhost:8080

268
KavinduWije

الخطوة 1

قم بتشغيل سطر الأوامر كمسؤول. ثم قم بتشغيل الأمر أذكر أدناه. اكتب رقم المنفذ الخاص بك في yourPortNumber

netstat -ano | findstr: yourPortNumber

تظهر المنطقة الدائرية باللون الأحمر PID (معرف العملية)

الخطوة 2

ثم يمكنك تنفيذ هذا الأمر بعد تحديد معرف المنتج.

taskkill/PID typeyourPIDhere / F

ملاحظة قم بتشغيل الأمر الأول مرة أخرى للتحقق مما إذا كانت العملية لا تزال متاحة أم لا. ستحصل على سطر فارغ إذا تم إنهاء العملية بنجاح.

639
KavinduWije

الخطوة 1 (نفس الشيء مقبول إجابة كتبها KavinduWije ):

netstat -ano | findstr :yourPortNumber

التغيير في الخطوة 2 إلى:

tskill typeyourPIDhere 

هذا منذ taskkill لا يعمل في بعض الأوامر git bash

79
afsarkhan10182

إذا كنت تستخدم GitBash

الخطوة الأولى:

netstat -ano | findstr :8080

الخطوة الثانية:

taskkill /PID typeyourPIDhere /F 

(/F ينهي العملية بقوة)

71
Ara Yaghsizian

في Windows PowerShell الإصدار 1 أو الأحدث لإيقاف العملية على نوع المنفذ 3000:

Stop-Process (، ((netstat -ano | findstr: 3000) .split () | foreach {$ [$ . length-1]}) -Force


كما اقترحmorganpdx ، يوجد إصدار PowerShell-ish أفضل ، وهو إصدار أفضل:

إيقاف العملية - (الحصول على NetTCPConnection - LocalPort 3000).

21
todorm

للاستخدام في سطر الأوامر:

for /f "tokens=5" %a in ('netstat -aon ^| find ":8080" ^| find "LISTENING"') do taskkill /f /pid %a

للاستخدام في ملف الخفافيش:

for /f "tokens=5" %%a in ('netstat -aon ^| find ":8080" ^| find "LISTENING"') do taskkill /f /pid %%a
10
Mahesh Narwade

مع Windows 10 textools الافتراضي tstrong:

1.) ابحث عن PID (ProcessId) باستخدام المنفذ 8080:

netstat -aon | findstr 8080

TCP 0.0.0.0:8080 0.0.0.0 يتم الاستماع 11980

2.) اقتل عملية الزومبي:

taskkill /F /PID 11980

حيث "11980" هو ProcessId الخاص بك

8
DuracellDeMonaco

لمستخدمي windows ، يمكنك استخدام CurrPorts أداة لقتل المنافذ قيد الاستخدام بسهولة  enter image description here

7
Zuhair Taha

إذا كنت تعرف رقم المنفذ بالفعل ، فربما يكفي إرسال إشارة إنهاء البرنامج إلى العملية (SIGTERM):

kill $(lsof -t -i :PORT_NUMBER)
4
Telefonplan

يمكنك القيام به عن طريق تشغيل ملف الخفافيش:

@ECHO OFF                                                                              
FOR /F "tokens=5" %%T IN ('netstat -a -n -o ^| findstr "9797" ') DO (
SET /A ProcessId=%%T) &GOTO SkipLine                                                   
:SkipLine                                                                              
echo ProcessId to kill = %ProcessId%
taskkill /f /pid %ProcessId%
PAUSE
3
flopcoder

في حال كنت ترغب في القيام بذلك باستخدام python: check هل من الممكن في عملية python kill التي تعمل على منفذ معين ، على سبيل المثال 8080؟ الجواب من Smunk يعمل بشكل جيد. أكرر رمزه هنا:

from psutil import process_iter
from signal import SIGTERM # or SIGKILL

for proc in process_iter():
    for conns in proc.connections(kind='inet'):
        if conns.laddr.port == 8080:
            proc.send_signal(SIGTERM) # or SIGKILL
            continue 
3
Kardi Teknomo

كنت أقوم بتشغيل zookeeperwindows ، لم أتمكن من إيقاف تشغيل zookeeper في منفذ 2181 باستخدام zookeeper-stop.sh ، لذا جربت طريقة القطع المائلة المزدوجة هذه "/ /" لتوجيه المهام. انها عملت

     1. netstat -ano | findstr :2181
       TCP    0.0.0.0:2181           0.0.0.0:0              LISTENING       8876
       TCP    [::]:2181              [::]:0                 LISTENING       8876

     2.taskkill //PID 8876 //F
       SUCCESS: The process with PID 8876 has been terminated.
2
driven_spider

يمكننا تجنب ذلك عن طريق إعادة تشغيل IIS بسهولة ، وذلك باستخدام الأمر التالي.

IISRESET

0
ksrider 148