Question Comment pouvez-vous savoir quel processus écoute sur un port sous Windows?


Comment pouvez-vous savoir quel processus écoute sur un port sous Windows?


1485
2017-09-07 06:26


origine


Réponses:


C:\> netstat -a -b

(ajouter -n pour l'arrêter en essayant de résoudre les noms d'hôtes, ce qui le rendra beaucoup plus rapide)

Notez la recommandation de Dane pour TCPView. Ça a l'air très utile!

-une  Affiche toutes les connexions et les ports d'écoute.

-b  Affiche l'exécutable impliqué dans la création de chaque connexion ou         port d'écoute. Dans certains cas, hôte exécutable bien connu         plusieurs composants indépendants, et dans ces cas, la         séquence de composants impliqués dans la création de la connexion         ou le port d'écoute est affiché. Dans ce cas, l'exécutable         le nom est dans [] en bas, en haut est le composant qu'il a appelé,         et ainsi de suite jusqu'à TCP / IP a été atteint. Notez que cette option         peut prendre beaucoup de temps et échouera à moins d'avoir suffisamment         autorisations

-n  Affiche les adresses et les numéros de port sous forme numérique.

-o  Affiche l'ID du processus propriétaire associé à chaque connexion.


1665
2017-09-07 06:28



Il y a une interface graphique native pour Windows:

  • Démarrer >> Tous les programmes >> Accessoires >> Outils système >> Moniteur de ressources

ou Courir  resmon.exe, ou de Gestionnaire des tâches onglet de performance

enter image description here


1606
2018-05-18 05:02



Utilisation TCPView si vous voulez une interface graphique pour cela. C'est l'ancienne application Sysinternals que Microsoft a rachetée.


176
2017-09-07 06:38



netstat -aon | find /i "listening"

126
2017-09-07 06:32



Vous pouvez obtenir plus d'informations si vous exécutez la commande suivante:

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

L'utilisation de la commande 'Find' vous permet de filtrer les résultats. find / i "écoute" n'affiche que les ports qui sont "écoutant". Notez que vous avez besoin de / i pour ignorer le cas sinon vous devez taper find "LISTENING". | find "port" limitera les résultats à ceux qui contiennent le numéro de port spécifique. Notez, à ce sujet, il filtrera également dans les résultats qui ont le numéro de port n'importe où dans la chaîne de réponse.


61
2017-10-08 18:56



  1. Ouvrez une fenêtre d'invite de commande (en tant qu'administrateur) De "Démarrer \ Zone de recherche" Entrez "cmd" puis cliquez avec le bouton droit sur "cmd.exe" et sélectionnez "Exécuter en tant qu'administrateur"

  2. Entrez le texte suivant, puis appuyez sur Entrée.

    netstat -abno

    -une          Affiche toutes les connexions et les ports d'écoute.

    -b          Affiche l'exécutable impliqué dans la création de chaque connexion ou             port d'écoute. Dans certains cas, hôte exécutable bien connu             plusieurs composants indépendants, et dans ces cas, la             séquence de composants impliqués dans la création de la connexion             ou le port d'écoute est affiché. Dans ce cas, l'exécutable             le nom est dans [] en bas, en haut est le composant qu'il a appelé,             et ainsi de suite jusqu'à TCP / IP a été atteint. Notez que cette option             peut prendre beaucoup de temps et échouera à moins d'avoir suffisamment             autorisations

    -n          Affiche les adresses et les numéros de port sous forme numérique.

    -o          Affiche l'ID du processus propriétaire associé à chaque connexion.

  3. Recherchez le port que vous écoutez sous "Adresse locale"

  4. Regardez le nom du processus directement sous cela.

REMARQUE: pour rechercher le processus sous Gestionnaire des tâches

  1. Notez le PID (identificateur de processus) à côté du port que vous regardez.

  2. Ouvrez le Gestionnaire des tâches de Windows.

  3. Sélectionnez l'onglet Processus.

  4. Recherchez le PID que vous avez noté lors de l'exécution du netstat à l'étape 1.

    • Si vous ne voyez pas de colonne PID, cliquez sur Afficher / Sélectionner les colonnes. Sélectionnez PID.

    • Assurez-vous que "Afficher les processus de tous les utilisateurs" est sélectionné.


59
2017-11-08 01:49



Obtenir le PID et le nom de l'image

N'utilisez qu'une seule commande:

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

9000 devrait être remplacé par votre numéro de port.

le sortie contiendra quelque chose comme ceci:

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

Explication:

  • il itère à travers chaque ligne de la sortie de la commande suivante:

    netstat -aon | findstr 9000
    
  • de chaque ligne, le PID (%a - le nom n'est pas important ici) est extrait (PID est le 5th élément dans cette ligne) et transmis à la commande suivante

    tasklist /FI "PID eq 5312"
    

Si tu veux sauter la entête et le retour du invite de commande, vous pouvez utiliser:

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

Sortie:

java.exe                      5312 Services                   0    130,768 K

42
2018-02-10 10:17



Nous trouvons d'abord l'identifiant de processus de cette tâche particulière que nous devons éliminer pour obtenir un port gratuit

type
netstat -n -a -o

Après l'exécution de cette commande dans l'invite de la ligne de commande Windows (cmd) sélectionnez le pid que je pense que la dernière colonne suppose que c'est 3312

Maintenant tapez

taskkill / F / PID 3312

Vous pouvez maintenant vérifier en tapant la commande netstat.

NOTE: parfois Windows ne vous permet pas d'exécuter cette commande directement sur CMD donc d'abord vous devez aller avec cette étapes à partir de l'invite de commande start-> (clic droit sur l'invite de commande et exécution en tant qu'administrateur)


36
2017-08-23 15:25



L'option -b mentionnée dans la plupart des réponses nécessite que vous ayez des privilèges d'administrateur sur la machine. Vous n'avez pas vraiment besoin de droits élevés pour obtenir le nom du processus!

Recherchez le pid du processus s'exécutant dans le numéro de port (par exemple, 8080)

netstat -ano | findStr "8080"

Trouver le nom du processus par pid

tasklist /fi "pid eq 2216"

find process by TCP/IP port


31
2018-01-24 03:50