Comment pouvez-vous savoir quel processus est à l'écoute sur un port sur Windows?
Comment pouvez-vous savoir quel processus est à l'écoute sur un port sur Windows?
- Currports est un outil qui permet de rechercher + filtre trop nirsoft.net/utils/cports.html
- Je suis tombé sur cela tout en essayant de lancer Tomcat en mode debug sous IntelliJ, la meilleure solution pour moi s'est avéré être en train de changer le débogage de transport de configuration (Fichier->Paramètres->Build/exe/deploy->Débogueur) de "prise" à la "mémoire partagée".
Vous devez vous connecter pour publier un commentaire.
PowerShell
cmd
(Ajouter -n arrêter d'essayer de résoudre les noms d'hôtes, qui en font un beaucoup plus rapide.)
Note Dane de la recommandation de TCPView. Il a l'air très utile!
-un Affiche toutes les connexions et les ports d'écoute.
-b Affiche le fichier exécutable impliqués dans la création de chaque connexion ou de port d'écoute. Dans certains cas bien connu des exécutables de l'hôte de plusieurs éléments indépendants, et dans ces cas, la séquence des composants impliqués dans la création de la connexion ou de port d'écoute est affiché. Dans ce cas, le nom de l'exécutable est dans [] en bas, sur le dessus est le composant qu'il a appelé, et ainsi de suite jusqu'à ce que TCP/IP a été atteint. Notez que cette option peut prendre beaucoup de temps et ne pourra pas, sauf si vous avez les autorisations suffisantes.
-n Affiche les adresses et les numéros de port sous forme numérique.
-o Affiche le propriétaire de l'ID de processus associé à chaque connexion.
netstat -a -n -p
. L'-b et -d options ne sont pas disponibles. L'option-o est pour le timer. L'option-p affiche le nom du programme et PID. (sur debian 8).1234
- ensuite, vous pouvez utilisertasklist /fi "pid eq 1234"
pour trouver le nom et d'autres détails du processus.netsh http show urlacl
. Il montre le système de réservations d'URL.| grep :80
est utile pour la recherche de port spécifique. si installégrep
.Il y a une interface graphique native pour Windows:
ou Exécuter
resmon.exe
,ou de TaskManager onglet performances
Open Resource Monitor
bouton. De invite runperfmon /res
commande fonctionne également pour ouvrir le moniteur de ressources.Utilisation TCPView si vous voulez une interface graphique pour ce. C'est la vieille Sysinternals application que Microsoft a racheté.
netstat -aon | find /i "abhören"
pour l'allemand.FIND: Parameter format not correct
Le commutateur-b mentionnés dans la plupart des réponses exige de vous que vous disposez de privilèges d'administrateur sur la machine. Vous n'avez pas vraiment besoin des droits élevés pour obtenir le nom du processus!
Trouver le pid du processus en cours d'exécution dans le numéro de port (par exemple, 8080)
Trouver le nom du processus par pid
Vous pouvez obtenir plus d'informations si vous exécutez la commande suivante:
à l'aide de la "Trouver" commande vous permet de filtrer les résultats. find /i "à l'écoute" affiche uniquement les ports en Écoute. Remarque, vous avez besoin de l' /i pour ignorer la casse sinon, vous devez taper trouver "à l'ÉCOUTE". |trouver "port" de limiter les résultats à ceux contenant le numéro de port spécifique. Remarque, sur ce qu'il va également de filtrer les résultats qui ont le numéro de port n'importe où dans la chaîne de réponse.
FIND: Parameter format not correct
. Vous avez besoin d'ajouter un espace après le critère de recherche. Cela vous laisse avecnetstat -aon | find /i "listening" | find "1234 "
.{back tick}
"écoute{back tick}
"" |find "{back tick}
"port{back tick}
"" (<- note échappé citations - excusez le termeback tick
que je ne peux pas ajouter le caractère réel car il pense que ses une capture d'écran)Ouvrez une fenêtre d'invite de commande (en tant qu'Administrateur) à Partir de "Démarrer\boîte de Recherche" tapez "cmd" puis cliquez-droit sur "cmd.exe" et sélectionnez "Exécuter en tant qu'Administrateur"
Entrez le texte suivant puis appuyez sur Entrée.
netstat -abno
-un Affiche toutes les connexions et les ports d'écoute.
-b Affiche le fichier exécutable impliqués dans la création de chaque connexion ou
port d'écoute. Dans certains cas bien connu des exécutables de l'hôte
plusieurs éléments indépendants, et dans ces cas la
séquence de composants impliqués dans la création de la connexion
ou de port d'écoute est affiché. Dans ce cas, le fichier exécutable
nom de [] en bas, sur le dessus est le composant qu'il appelle,
et ainsi de suite jusqu'à ce que TCP/IP a été atteint. Notez que cette option
peut prendre beaucoup de temps et ne pourra pas, sauf si vous avez suffisamment de
les autorisations.
-n Affiche les adresses et les numéros de port sous forme numérique.
-o Affiche le propriétaire de l'ID de processus associé à chaque connexion.
Trouver le Port que vous êtes à l'écoute sur sous "Adresse Locale"
Regarder le nom du processus, juste en-dessous.
REMARQUE: Pour trouver le processus du Gestionnaire des Tâches
Note le PID (identificateur de processus), à côté du port, vous êtes à la recherche à.
Ouvrir Le Gestionnaire Des Tâches De Windows.
Sélectionnez l'onglet Processus.
Look pour le PID que vous avez noté quand vous avez fait la commande netstat dans l'étape 1.
Si vous ne voyez pas une colonne PID, cliquez sur Affichage /sélection des Colonnes. Sélectionnez PID.
Vérifiez que l'option “Afficher les processus de tous les utilisateurs” est sélectionné.
Obtenir le PID et le Nom de l'Image
Utiliser une seule commande:
où
9000
doit être remplacé par le numéro de port.La sortie contiendra quelque chose comme ceci:
Explication:
il parcourt chaque ligne de la sortie de la commande suivante:
de chaque ligne, le PID (
%a
- le nom n'est pas important ici) est extraite (PID est le5
ème de l'élément dans la ligne) et transmis à la commande suivanteSi vous voulez sauter la en-tête et le retour de la invite de commande, vous pouvez utiliser:
De sortie:
findstr :9000
si pas,vous trouverez même des applications de ce que contient le nombre (p. ex. lors de votre recherche "80" vous trouverez des applications sur le port 80, 800, 8000 trop).Nous trouvons d'abord l'id de processus de tâche à laquelle nous devons les éliminer, afin d'obtenir de port gratuit
type
netstat -n -a-o
Après l'exécution de cette commande dans windows invite de ligne de commande(cmd)
sélectionnez le pid qui, je pense, la dernière colonne suppose que c'est 3312
Maintenant type
taskkill /F /PID 3312
Vous pouvez maintenant vérifier en tapant la commande netstat.
REMARQUE: parfois, windows ne vous permet pas d'exécuter cette commande directement sur CMD donc d'abord vous avez besoin pour aller avec ces étapes
à partir de démarrer-> invite de commande (clic droit sur l'invite de commande et exécuter en tant qu'administrateur)
Pour obtenir une liste de tous les processus possédant l'ID associé à chaque connexion:
Si vous voulez tuer tous les processus de l'identifiant et de l'utilisation de cette commande, afin que le port deviennent gratuits
Il est très simple d'obtenir le numéro de port à partir de pid dans windows.
Voici les étapes:
1), Passez à exécuter --> tapez cmd --> appuyez sur enter.
2) écrire la commande suivante...
(Note: Ne pas inclure entre crochets.)
3) appuyez sur entrée...
4) Puis cmd va vous donner le détail du service en cours d'exécution sur ce port alongwith pid.
5) Ouvrez le gestionnaire des tâches et frapper l'onglet service et match le pid avec celle de la cmd et c'est tout.
Il suffit d'ouvrir une invite de commande et tapez : (en disant que le port est 123456)
Vous verrez tout ce dont vous avez besoin
Les en-têtes sont :
c'est comme mentionné ici
findstr 123456
(sans les guillemets) oufind "123456"
(avec les guillemets). (@Josh)Si vous souhaitez utiliser un outil graphique pour ce faire il y a SysInternals TCPView.
Avec PowerShell 5 sur Windows 10 ou Windows Server 2016, exécutez
Get-NetTCPConnection
applet de commande. Je suppose que ça doit aussi fonctionner sur les anciennes versions de Windows.La sortie par défaut de
Get-NetTCPConnection
ne comprennent pas l'ID de Processus par une raison quelconque, et c'est un peu déroutant. Cependant, vous pouvez toujours obtenir par le formatage de la sortie. Le bien que vous cherchez, estOwningProcess
.Si vous voulez trouver l'ID du processus qui est à l'écoute sur le port 443, exécutez cette commande:
Le Format de sortie d'une table avec les propriétés que vous recherchez:
Si vous souhaitez trouver le nom du processus, exécutez cette commande:
Tapez la commande:
netstat -aon | findstr :DESIRED_PORT_NUMBER
Par exemple, si je veux trouver le port 80:
netstat -aon | findstr :80
Cette réponse a été posté dans ce fil.
Afin de savoir quels processus(PID) est à l'aide de qui port:
Où 1234 est le PID du processus en cours. [Aller à la Task Manager -> Services/onglet Processus pour trouver le PID de votre application]
-n
indicateur est défini deux fois.-ano
est assez.netstat -ao
etnetstat -ab
vous dire l'application, mais si vous n'êtes pas administrateur, vous aurez "L'opération demandée nécessite une élévation".C'est pas l'idéal, mais si vous utilisez sysinternals Process Explorer, vous pouvez aller à des processus spécifiques de propriétés et de regarder l'onglet TCP pour voir si ils sont en utilisant le port qui vous intéresse. Peu d'aiguille et la botte de foin chose, mais peut-être que ça va aider quelqu'un....
Netstat
-o processus propriétaire
netstat -bano | findstr "7002"
netstat -ano > ano.txt
Currports outil d'aide à la recherche et filtre
Je recommande CurrPorts de NirSoft.
CurrPorts pouvez filtrer l'affichage des résultats. TCPView ne dispose pas de cette fonctionnalité.
Remarque: Vous pouvez cliquer-droit sur un processus de prise de connexion et sélectionnez "Fermer la sélection des Connexions TCP" (Vous pouvez aussi le faire dans TCPView). Cela suffit souvent à résoudre les problèmes de connectivité que j'ai avec Outlook et Lync après je changer de Vpn. Avec CurrPorts, vous pouvez aussi fermer les connexions à partir de la ligne de commande avec le "/fermer" paramètre.
Suivez ces outils :- à Partir de cmd :-
C:\> netstat -anob
avec Administrateur privilège.http://technet.microsoft.com/en-us/sysinternals/bb896653 - Process Explorer
http://technet.microsoft.com/en-us/sysinternals/bb896645 - Processus De Vidage
http://technet.microsoft.com/en-us/sysinternals/bb896644 - Moniteur De Port
Tous à partir de sysinternals.com
Si vous voulez simplement savoir fonctionnement de processus et threads sous chaque processus, je vous recommande d'apprendre à propos de
wmic
. Merveilleux cmd outil en ligne, qui vous donne beaucoup plus que vous pouvez connaître.Exampe :-
Commande ci-dessus va afficher tous les liste des processus en bref toutes les 5 secondes. Pour en savoir plus, vous pouvez simplement aller avec
/?
de commande de windows , pour E. g,et ainsi de suite et ainsi de suite. 🙂
netstat -a-o
Cela montre le PID du processus en cours d'exécution sur un port particulier.
Garder à l'esprit l'id de processus et d'aller au gestionnaire de Tâches et de services ou sur l'onglet détails et terminer le processus qui a le même PID.
Ainsi, vous pouvez tuer un processus en cours d'exécution sur un port particulier dans windows.
Pour les personnes à l'aide de Powershell, essayez
Get-NetworkStatistics
:À L'Aide De Powershell...
...ce serait votre ami (remplacer 8080 avec votre numéro de port):
Exemple de sortie
Donc dans cet exemple tnslsnr.exe (OracleXE base de données) est en écoute sur le port 8080.
Explication rapide
Select-String
est utilisé pour filtrer la longue sortie denetstat
pour les lignes.-Pattern
tests de chaque ligne avec une expression régulière.-Context 0,1
sera de sortie 0 lignes principales et 1 ligne de remorquage pour chaque motif.Par programmation, vous avez besoin de trucs de iphlpapi.h, par exemple GetTcpTable2(). Des Structures comme MIB_TCP6ROW2 contenir le propriétaire PID.
Une ligne unique solution qui m'aide est de ce type, en remplaçant simplement l'3000 avec votre port
$P = Get-Process -Id (Get-NetTCPConnection -LocalPort 3000).OwningProcess; kill $P.Id
Ouvrir le
command prompt - start » run » cmd or start » All Programs » Accessories » Command Prompt
.Type
netstat -aon | findstr '[port_number]'
Remplacer le [numéro_port] avec le numéro de port que vous souhaitez vérifier, puis appuyez sur entrée.
Type
tasklist | findstr '[PID]'
Remplacer le [PID] avec le numéro de l'étape ci-dessus et appuyez sur entrée.
Pour Windows, si vous voulez trouver des trucs à l'écoute ou connecté sur le port 1234, exécutez la commande suivante à l'invite de cmd:
Utiliser en dessous de script batch qui prend un nom de processus comme argument et donne netstat sortie pour le processus.