web-dev-qa-db-fra.com

Comment rechercher un processus par nom?

Searchindexer.exe empêche mon appareil, qui est en fait mon disque dur externe, à arrêter.

J'ai essayé de fermer cette application en recherchant sur le responsable des tâches, mais je ne l'ai pas trouvé sur l'onglet Processus.

Puis-je rechercher ce processus par son nom, obtenir un identifiant de processus et le tuer?

5
Santosh Kumar

Si vous recherchez des processus tels que searchindexer - cela devrait être assez simple à faire avec PowerShell

Get-Process vous montrera une liste de processus en cours d'exécution. Dans ce cas, je l'ai pipi à Select -first 1 Parce que vous êtes intéressé par les en-têtes de colonne, pas une liste des 100 processus sur mon PC: enter image description here


Suivant UP - Vous savez maintenant comment obtenir des processus, vous devez réduire cela à un processus spécifique. Ci-dessous, j'ai montré 4 méthodes pour le faire: enter image description hereGet-Process Search* retournera tous les processus commençant par la recherche

Get-Process SearchIndexer retournera juste qu'un processus s'il existe

Get-Process | Where {$_.Name -eq "SearchIndexer"} trouvera tous les processus, puis sélectionnez celui-ci appelé Searchindexer

Get-Process | Where {$_.ProcessName -Like "SearchIn*"} obtiendra tous les processus et rétrécira à ceux qui commencent par "Recherche".

En tant que note latérale - vous pouvez utiliser des cartes WILD à l'une ou l'autre extrémité, alors ` Rchinde " retournera également le processus que vous voulez.


Maintenant - tuer le processus - tuyez-le pour arrêter-traiter: enter image description here ..mais ça n'a pas fonctionné!


Pour l'arrêter - comme avec certains processus - vous devez exécuter PowerShell comme administrateur: enter image description here ..mais tu as toujours une invite!

... ignorer l'erreur en bas, nous venons de prouver que le processus n'existe plus

Ajouter le -Force commutateur et l'invite disparaît! enter image description here


Mais nous n'aimons pas les erreurs lorsque nous essayons de le faire sur et sur: enter image description here ... Donc, nous avons donc besoin de le gérer légèrement différemment. Au lieu d'arrêter explicitement qu'un processus, prenez-les tous, filtrez-le à ceux que nous voulons (le cas échéant), puis les tuer (s'ils existent): enter image description here


dernier up - Ajoutez-le comme une action de tâche planifiée (si vous en avez besoin) car Windows aime redémarrer certains services/processus et vous êtes tous définis.

9
Fazer87

Une alternative à la procédure à suivre:

Get-WmiObject Win32_Process | select commandline | Select-String -Pattern "SearchIndexer"
1
tmm1