Windows'taki bir bağlantı noktasını hangi işlemin dinlediğini nasıl öğrenebilirsiniz?


2273

Windows'taki bir bağlantı noktasını hangi işlemin dinlediğini nasıl öğrenebilirsiniz?


3
Currports arama + filtre de yardımcı olan bir araçtır nirsoft.net/utils/cports.html
Blue Clouds

1
Tomcat'i IntelliJ altında hata ayıklama modunda çalıştırmaya çalışırken bunu yaptım, benim için en iyi çözüm hata ayıklama aktarım yapılandırmasını (Dosya-> Ayarlar-> Oluştur / exe / deploy-> Hata Ayıklayıcı) msgstr "paylaşılan bellek".
TMN

Yanıtlar:


2619

Yeni cevap, powershell

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

Eski cevap, cmd

 C:\> netstat -a -b

(Ana makine adlarını çözmeye çalışmasını durdurmak için -n ekleyin , bu da çok daha hızlı hale getirir.)

Not Dane'nin TCPView için önerisi . Çok faydalı görünüyor!

-a Tüm bağlantıları ve dinleme bağlantı noktalarını görüntüler.

-b Her bağlantıyı veya dinleme bağlantı noktasını oluşturmaya dahil olan yürütülebilir dosyayı görüntüler. Bazı durumlarda, iyi bilinen yürütülebilir dosyalar birden fazla bağımsız bileşeni barındırır ve bu durumlarda bağlantı veya dinleme bağlantı noktasının oluşturulmasında yer alan bileşenlerin sırası görüntülenir. Bu durumda çalıştırılabilir ad en altta [], üstte çağırdığı bileşendir ve TCP / IP'ye ulaşılana kadar devam eder. Bu seçeneğin zaman alıcı olabileceğini ve yeterli izniniz yoksa başarısız olacağını unutmayın.

-n Adresleri ve bağlantı noktası numaralarını sayısal biçimde görüntüler.

-o Her bağlantıyla ilişkilendirilmiş sahip olma işlem kimliğini görüntüler.


252
-o PID almak için
Laurent K

121
ve uygunsa / F kullanarak işlemi sonlandırmak için taskkill / PID <pid>.
BitMask777

81
Komut satırı kabuğunuzu yönetici olarak çalıştırmanız gerekebilir, aksi takdirde yetersiz ayrıcalıklar hakkında bir hata iletisi alabilirsiniz. Cmd.exe dosyasına sağ tıkladığınızda "Yönetici olarak çalıştır" seçeneğini kullanın.
Gruber

6
Çalışır, ancak yükseltilmiş izin gerektirir. Shift + komut simgesine sağ tıklayın -> yönetici olarak çalıştır
Christian Bongiorno

18
PID'ye sahip olmak - diyelim ki 1234- o zaman tasklist /fi "pid eq 1234"sürecin adını ve diğer ayrıntılarını bulmak için kullanabilirsiniz .
Steve Chambers

2202

Windows için yerel bir GUI var:

  • Başlat menüsü → Tüm ProgramlarAksesuarlarSistem AraçlarıKaynak Monitörü

Veya Çalıştır'ı resmon.exe veya Görev Yöneticisi'nin performans sekmesinden.

Resim açıklamasını buraya girin


41
Ayrıca bağlamanın güvenlik duvarı durumunu da gösterir (son sütun). Çok faydalý.
Raphael

8
Bunu çalıştırmak için yönetici (veya o grupta) olmanız gerekir.
KrishPrabakar

2
@bcorso, " Belirtilmemiş adres " e bağlanmak ne anlama geliyor?
Pacerier

5
Ayrıca, Görev Yöneticisi'nin Performans sekmesinden, en azından Windows 10'da başlatılabilir. (Diğer sürümleri kontrol
Mathieu K.

10
Yukarıdaki @ user4836454 numaralı yorum doğru DEĞİLDİR: Kaynak Monitörü, bu bağlantı noktalarına ağ bağlantısı olmasa bile dinleyicili bağlantı noktalarını gösterir. "TCP Bağlantıları" bölümü yerine "Dinleme Bağlantı Noktaları" bölümüne bakın.
Jpsy

235

Bunun için bir GUI istiyorsanız TCPView kullanın . Microsoft'un satın aldığı eski Sysinternals uygulaması.


9
Bu bana göre en iyi seçenektir, özellikle de tüm süreçler aynı listede olduğundan ve sağ tıklayarak doğrudan kapatabilirsiniz.
Andreas Lundgren

8
Ayrıca, bu yönetici ayrıcalıkları gerektirmez!
Janac Meena

222

Pencereler için:

netstat -aon | find /i "listening"

25
+1 Ancak, pencereleriniz İngilizce dışında bir dilde çalışıyorsa, "dinlemeyi" yerel terim olarak değiştirmeniz gerekecektir. Örneğin netstat -aon | find /i "abhören"Alman için.
Levite

2
Benim durumumda belki tırnak işareti nedeniyle işe yaramadı, ama çözüm netstat -aon | findstr DİNLEME mükemmel çalışıyor!
babası

Bu, yükseltilmiş ayrıcalıklar gerektirmeden çalışır.
Vlad Schnakovszki

1
PowerShell ile W10 15063.729 üzerinde bu komutu çalıştırmaya çalışırken bir hata alıyorum:FIND: Parameter format not correct
Nicke Manarin

1
Bu yanıt "Windows'taki bir bağlantı noktasında hangi işlemin [ad] dinlediğini bulma" ile nasıl ilgilidir?
Pawel Cioch

137

Çoğu yanıtta belirtilen -b anahtarı, makinede yönetici ayrıcalıklarına sahip olmanızı gerektirir. İşlem adını almak için gerçekten yükseltilmiş haklara ihtiyacınız yoktur!

Bağlantı noktası numarasında çalışan işlemin pid'ini bulun (ör. 8080)

netstat -ano | findStr "8080"

İşlem adını pid ile bulma

tasklist /fi "pid eq 2216"

TCP / IP bağlantı noktasıyla işlemi bul


82

Aşağıdaki komutu çalıştırırsanız daha fazla bilgi alabilirsiniz:

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

'Bul' komutunu kullanarak sonuçları filtrelemenize izin verir. find /i "listening"yalnızca 'Dinleme' olan bağlantı noktalarını görüntüler. Not, büyük / /iküçük harfleri yoksaymanız gerekir , aksi takdirde find "LISTENING" yazabilirsiniz. | find "port"sonuçları yalnızca belirli bağlantı noktası numarasını içerenlerle sınırlar. Bunun üzerine, yanıt dizesinde herhangi bir yerde bağlantı noktası numarası bulunan sonuçlara da filtre uygulayacağını unutmayın.


8
PowerShell v2.0'da çalıştırmaya çalışan FWIW hata veriyor FIND: Parameter format not correct. Bulma ölçütlerinden sonra bir boşluk eklemeniz gerekir. Bu seni bırakacak netstat -aon | find /i "listening" | find "1234 ".
benlik.

2
Yukarıdaki "bağlantı noktasını" bağlantı noktanızla değiştirin, eski "5000"
jbooker

1
@self. Borudan sonra boşluk ekledikten sonra bile PS 5.1 ile hala bu hatayı alıyorum. Ne olduğunu biliyor musun?
Nicke Manarin

2
@NickeManarinin & @self önce powershell'den cmd'ye değişir (sadece cmd yazın ve enter'a basın ve komutu yeniden yapın) veya powershell'de bu komutu kullanın: netstat -aon | find / i " {back tick}" listen {back tick}"" | find " {back tick}" port {back tick}" "(<- kaçan tırnak işaretleri not - back tickbir snipping düşündüğü gibi gerçek karakteri ekleyemiyorum olarak terim bahane )
Tristan van Dam

72
  1. Bir komut istemi penceresi açın (Yönetici olarak) "Başlat \ Arama kutusundan" cmd girin "ve ardından" cmd.exe "ye sağ tıklayın ve" Yönetici Olarak Çalıştır "ı seçin

  2. Aşağıdaki metni girin ve Enter tuşuna basın.

    netstat -abno

    -a Tüm bağlantıları ve dinleme bağlantı noktalarını görüntüler.

    -b Her bağlantıyı veya dinleme bağlantı noktasını oluşturmaya dahil olan yürütülebilir dosyayı görüntüler. Bazı durumlarda, iyi bilinen yürütülebilir dosyalar birden fazla bağımsız bileşeni barındırır ve bu durumlarda bağlantı veya dinleme bağlantı noktasının oluşturulmasında yer alan bileşenlerin sırası görüntülenir. Bu durumda çalıştırılabilir ad en altta [], üstte çağırdığı bileşendir ve TCP / IP'ye ulaşılana kadar devam eder. Bu seçeneğin zaman alıcı olabileceğini ve yeterli izniniz yoksa başarısız olacağını unutmayın.

    -n Adresleri ve bağlantı noktası numaralarını sayısal biçimde görüntüler.

    -o Her bağlantıyla ilişkilendirilmiş sahip olma işlem kimliğini görüntüler.

  3. Dinlediğiniz Bağlantı Noktasını "Yerel Adres" altında bulun

  4. Bunun altındaki işlem adına doğrudan bakın.

NOT: İşlemi Görev Yöneticisi altında bulmak için

  1. Bakmakta olduğunuz portun yanındaki PID'ye (işlem tanımlayıcı) dikkat edin.

  2. Windows Görev Yöneticisi'ni açın.

  3. İşlemler sekmesini seçin.

  4. 1. adımda netstat'ı yaptığınızda not ettiğiniz PID'yi arayın.

    • Bir PID sütunu görmüyorsanız, Sütunları Görüntüle / Seç'e tıklayın. PID'yi seçin.

    • “Tüm kullanıcılardan işlemleri göster” öğesinin seçili olduğundan emin olun.


56

PID ve Resim Adı Alın

Yalnızca bir komut kullanın:

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

nerede 9000 Bağlantı noktası sayısına göre değiştirilmelidir.

Çıktı böyle bir şey içerecektir:

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

Açıklama:

  • aşağıdaki komutun çıktısından her satırda yinelenir:

    netstat -aon | findstr 9000
    
  • her satırdan PID ( %a- ad burada önemli değildir) çıkarılır (PID o satırdaki 5th öğesidir) ve aşağıdaki komuta iletilir

    tasklist /FI "PID eq 5312"
    

Eğer isterseniz atlamak başlık ve dönüşü komut isteminde , şunları kullanabilirsiniz:

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

Çıktı:

java.exe                      5312 Services                   0    130,768 K

2
İyi cevap, ancak bunu değiştirmezseniz findstr :9000, numarayı içeren uygulamaları bile bulabilirsiniz (örneğin "80" aradığınızda 80, 800, 8000 numaralı bağlantı noktasında da uygulamalar bulabilirsiniz).
Radon8472

48

İlk olarak, bağlantı noktasını serbest bırakmak için ortadan kaldırmamız gereken belirli bir görevin işlem kimliğini buluruz:

tip

netstat -n -a -o

Windows komut satırı isteminde (cmd) bu komutu yürüttükten sonra, son sütunu düşündüğüm pid'i seçin. Bunun 3312 olduğunu varsayalım.

Şimdi yazın

taskkill /F /PID 3312

Şimdi netstatkomutu yazarak çapraz kontrol yapabilirsiniz .

NOT: bazen Windows bu komutu doğrudan CMD'de çalıştırmanıza izin vermez, bu nedenle önce şu adımlarla devam etmeniz gerekir:

Başlat menüsünden -> komut isteminden (komut istemine sağ tıklayın ve yönetici olarak çalıştırın)


30

Her bağlantıyla ilişkili tüm sahip olma işlem kimliklerinin bir listesini almak için:

netstat -ao |find /i "listening"

Herhangi bir işlemi öldürmek istiyorsanız kimliğe sahip olun ve bu komutu kullanın, böylece bağlantı noktası serbest kalır

Taskkill /F /IM PID of a process

1
bu UDP bağlantı noktalarını dinlemiyor
evandrix

27

Windows'da bir PID'den bağlantı noktası numarasını almak çok basittir.

Adımlar şunlardır:

  1. Koşmaya gidin → cmd yazın → tuşuna basın Enter.

  2. Aşağıdaki komutu yazın ...

    netstat -aon | findstr [port number]
    

    (Not: Köşeli parantez eklemeyin.)

  3. Basın Enter...

  4. Daha sonra cmd, PID ile birlikte bu bağlantı noktasında çalışan hizmetin ayrıntılarını verecektir.

  5. Görev Yöneticisi'ni açın ve servis sekmesine basın ve PID'yi cmd'ninkiyle eşleştirin, hepsi bu.


18

Sadece bir komut kabuğu açın ve yazın (portunuzun 123456 olduğunu söyleyerek):

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

İhtiyacınız olan her şeyi göreceksiniz.

Başlıklar:

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

Bu burada belirtildiği gibidir .


1
FYI / ilgilenen herkes için: Ya findstr 123456(tırnak işaretleri olmadan) ya da find "123456"(tırnak işaretleri ile). (@Josh)
Kevin Cruijssen

18

Hangi bağlantı noktasını (PID) hangi bağlantı noktasını kullandığını bulmak için:

netstat -anon | findstr 1234

Burada 1234, işleminizin PID'sidir. [Uygulamanızın PID'sini bulmak için Görev Yöneticisi → Hizmetler / İşlemler sekmesine gidin.]


1
-nBayrağın iki kez ayarlanması gerekmediğine dikkat edilmelidir . -anoyeterlidir.
mwieczorek

16

Windows 10 veya Windows Server 2016'da PowerShell 5 ile çalıştırın Get-NetTCPConnection cmdlet'i çalıştırın. Eski Windows sürümlerinde de çalışması gerektiğini düşünüyorum.

Varsayılan çıktısı Get-NetTCPConnectionherhangi bir nedenle İşlem Kimliği içermez ve biraz kafa karıştırıcıdır. Ancak, çıktıyı biçimlendirerek her zaman elde edebilirsiniz. Aradığınız mülk OwningProcess.

  • 443 numaralı bağlantı noktasını dinleyen işlemin kimliğini bulmak istiyorsanız, şu komutu çalıştırın:

    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
    
  • Çıkışı, aradığınız özelliklere sahip bir tabloya biçimlendirin:

    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
    
  • İşlemin bir adını bulmak istiyorsanız, şu komutu çalıştırın:

    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

Komutu yazın: netstat -aon | findstr :DESIRED_PORT_NUMBER

Örneğin, 80 numaralı bağlantı noktasını bulmak istiyorsanız: netstat -aon | findstr :80

Bu cevap ilk olarak bu soruya gönderildi .


11

netstat:

  • -a tüm bağlantı ve dinleme bağlantı noktalarını görüntüler
  • -b yürütülebilir dosyaları görüntüler
  • -n ana bilgisayar adlarını çözmeyi durdur (sayısal form)
  • -o sahip olma süreci

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

CurrPorts aracı arama ve filtre yardımcı olur


11
  1. Komut istemini açın - başlat → Çalıştırcmdveya başlat menüsü → Tüm ProgramlarAksesuarlarKomut İstemi .

  2. tip

    netstat -aon | findstr '[port_number]'
    

[port_number]Kontrol etmek ve vurmak istediğiniz gerçek port numarası ile değiştirin Enter.

  1. Bağlantı noktası herhangi bir uygulama tarafından kullanılıyorsa, o uygulamanın ayrıntısı gösterilir. Listenin son sütununda gösterilen sayı, o uygulamanın PID'sidir (işlem kimliği). Bunu not edin.
  2. tip

    tasklist | findstr '[PID]'
    

[PID]Yukarıdaki adımdaki numarayla değiştirin ve tuşuna basın Enter.

  1. Bağlantı noktası numaranızı kullanan uygulama adı gösterilir.

3
Win 10'da: Basit tırnakları çift tırnaklarla değiştirmedikçe 2. ve 4. adımdaki komutunuz çalışmaz. Netstat -aon demeli | findstr "[port_number]"
Leonardo Lopez

Bu çözüm yükseltilmiş izin gerektirmez. Tks!
Totalys

10

netstat -ao ve netstat -ab uygulamayı size söyleyin, ancak sistem yöneticisi değilseniz "İstenen işlem yükseklik gerektirir" iletisini alırsınız.

İdeal değil, ancak Sysinternals'ın İşlem Gezgini'ni kullanırsanız, belirli işlemlerin özelliklerine gidebilir ve ilgilendikleri bağlantı noktasını kullanıp kullanmadıklarını görmek için TCP sekmesine bakabilirsiniz. Biraz iğne ve samanlık ama belki birine yardım eder ...


Yönetici değilseniz, bu bilgileri başlangıçta size ait olmayan herhangi bir işlemden almak için İşlem Gezgini'ni (hatta Windows Görev Yöneticisi> Kaynak Yöneticisi'ni) kullanamazsınız.
Abel

9

NirSoft'tan CurrPorts'u tavsiye ederim .

CurrPorts görüntülenen sonuçları filtreleyebilir. TCPView bu özelliğe sahip değildir.

Not: Bir işlemin soket bağlantısını sağ tıklatıp "Seçili TCP Bağlantılarını Kapat" ı seçebilirsiniz (Bunu TCPView'da da yapabilirsiniz). Bu, VPN'leri değiştirdikten sonra genellikle Outlook ve Lync ile ilgili bağlantı sorunlarını giderir. CurrPorts ile, komut satırından "/ close" parametresiyle bağlantıları da kapatabilirsiniz.


7

Bana yardımcı olan tek satırlık bir çözüm bu. 3000'i portunuzla değiştirin:

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

Düzenleme: Değiştirildi killiçin Stop-Processdaha PowerShell benzeri dil için


6
Muhtemelen süreci otomatik olarak öldürmek istemezsiniz. Öldürme emrini ayırıp açıklardım. Bazı zayıf kullanıcıların bunu dikkatlice düşünmeden kopyalayıp yapıştırmasını istemiyorum.
20'de TinkerTenorSoftwareGuy

1
Ve tam PowerShell çözümü için değişiklik yapacaksanız kill-Stop'u Durdurma Get-Process -Id (Get-NetTCPConnection -LocalPort 3000).OwningProcess | Stop-Process
CubanX

6

Bu araçları takip edin: Gönderen cmd : C:\> netstat -anobile yönetici ayrıcalıkları.

Süreç araştırmacısı

İşlem Dökümü

Port İzleyici

Tüm sysinternals.com.

Her işlem altında işlemin çalıştığını ve iş parçacıklarını öğrenmek istiyorsanız, öğrenmenizi öneririz wmic. Bildiğinizden çok daha fazlasını veren harika bir komut satırı aracıdır.

Misal:

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

Yukarıdaki komut, her 5 saniyede bir kısaca tüm işlem listesini gösterecektir. Daha fazla bilgi için, sadece /?pencerelerin komutuyla devam edebilirsiniz , örneğin,

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

Ve bu böyle devam eder. :)


PortMon (Bağlantı Noktası Monitörünün arkasındaki bağlantı) ağ bağlantı noktalarını değil, seri ve paralel bağlantı noktalarını izlemek içindir .
James

6

kullanın:

netstat -a -o

Bu, belirli bir bağlantı noktasında çalışan işlemin PID'sini gösterir.

İşlem kimliğini unutmayın ve Görev Yöneticisi ve hizmetler veya ayrıntılar sekmesine gidin ve aynı PID'ye sahip işlemi sonlandırın.

Böylece, Windows'daki belirli bir bağlantı noktasında çalışan bir işlemi öldürebilirsiniz.


6

PowerShell kullanan kişiler için şunları deneyin 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

PowerShell kullanarak ... ... bu sizin arkadaşınız olacaktır (8080'i bağlantı noktası numaranızla değiştirin):

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

Örnek çıktı

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

Yani bu örnekte tnslsnr.exe (OracleXE veritabanı) 8080 numaralı bağlantı noktasını dinliyor.

Hızlı açıklama

  • Select-Stringnetstatilgili hatların uzun çıkışını filtrelemek için kullanılır .
  • -Pattern her satırı düzenli ifadeye karşı test eder.
  • -Context 0,1 her bir kalıp eşleşmesi için 0 satır aralığı ve 1 satır sonu çıktısını alır.

2

Windows için, dinleme veya 1234 bağlantı noktasına bağlı bir şeyler bulmak istiyorsanız, cmd isteminde aşağıdakileri yürütün:

netstat -na | find "1234"

1

İşlem adını bağımsız değişken olarak alan ve netstatişlem için çıktı veren aşağıdaki toplu komut dosyasını kullanın .

@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

Bilgi ve öldürme ile cevaplara dayanarak, benim için bunları tek bir komutta birleştirmek yararlıdır . Ve verilen bağlantı noktasını dinleyen işlem hakkında bilgi almak için cmd'den çalıştırabilirsiniz (örnek 8080):

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

Veya öldürmek istiyorsanız:

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

Ayrıca (bunlar biraz farklı olacaktır yarasa dosyasına bu komutu koyabilirsiniz - değiştirmek %iiçin%%i ):

Dosya portInfo.bat

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

Dosya portKill.bat

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

Sonra cmd'den bunu yapabilirsiniz:

portInfo.bat 8080

veya

portKill.bat 8080


1
Bu yararlı bir komut dosyası olabilir. Ancak, CMD'de ve PowerShell 6'da şanssız denedim. Belki biraz daha fazla ayrıntı vererek cevabınızı geliştirebilirsiniz.
Manfred

İlk kısım çalışıyor mu? Sadece "yarasa" ile ilgili bir sorun mu var? Geçiş değişkenlerinde bazı farklılıklar vardır: (%% i)
lczapski

@Manfred Bunu 3 farklı Windows 10'da denedim. Örneğin .\portInfo.bat 800PowerShell'de şöyle bir şey verin: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

Üzgünüm, şans yok. Bu komutu portInfo.batbir powershell terminalinde adlandırılmış bir dosyaya koydum , sonra da çalıştırdım .\portInfo.bat 8080. Çıktı sadece toplu iş dosyasının içeriğiydi. Çok iyi bir şey göz ardı ediyorum. Not, Windows 10'da PowerShell 6.2.3 kullanıyorum. Ayrıca normal bir komut isteminde de denedim, ancak sonuç aynıydı: Komut dosyasının içeriğinin çıktısı. Eminim ki bu işi yapabilmek için çok önemli bir bilgi eksik.
Manfred

1
Neden eklemek /nh: @tasklist /nh /fi "pid eq %i"? Ve tam da kapı:Findstr ":8080"
Beni değil miydi

0

Benim durumumda port (3000) hiç kullanılmadı ve netstat'ta görünmüyordu. Fakat! Windows için Uninstaller Docker sorunu çözdü.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.