2012-11-23 4 views
11

Comment tuer un processus par son nom et l'orginiated d'un chemin particulier en utilisant taskkill?taskkill pour différencier 2 images par chemin

taskkill/F/IM

certainement il ne peut pas distinguer deux processus a commencé à partir de deux endroits différents C: \ Dir1 et C: \ Dir2

Est-ce que tasklist a un interrupteur pour obtenir le nom de chemin

Répondre

7

taskkill ne peut pas le faire. Mais vous pouvez utiliser PowerShell si elle est une option:

(Get-WmiObject Win32_Process | Where-Object { $_.Path.StartsWith('C:\Dir1') }).Terminate() 
2

Utilisez la commande suivante (il fonctionne même sans Powershell):

wmic process where ExecutablePath='C:\\Dir1\\image.exe' delete 

REMARQUE: ExecutablePath est accessible pour tous les processus que si vous exécutez wmic en tant qu'administrateur sur Windows 8

1

Votre cas semble être lorsque vous avez des services personnalisés avec le même nom de processus installés sur la machine à partir de chemins différents. Si tel est le cas, vous avez probablement des noms de service différents qui peuvent être utilisés comme filtre supplémentaire.

Voir Syntaxe:

taskkill /S {REPLACE_WITH_SERVER_IP_OR_NAME} /F /FI "IMAGENAME eq {REPLACE_WITH_PROCESS_NAME}" /FI "SERVICES eq {REPLACE_WITH_SERVICENAME}" 

Voir Exemple:

taskkill /S 10.10.1.1 /F /FI "IMAGENAME eq tomcat7.exe" /FI "SERVICES eq tomcatServiceEngine" 

Pour une liste de tous les filtres disponibles, s'il vous plaît visitez taskkill command