O gerenciador de tarefas do Windows possui uma coluna chamada Linha de Comando que mostra o comando que iniciou a tarefa especificada, com todas as opções e parâmetros, por exemplo:
test.exe -V -A 127.0.0.1 -P 6062
Agora eu tenho que identificar uma determinada tarefa que está escutando em uma determinada porta e / ou foi chamada com uma certa combinação de switches. Meu objetivo é fechar a tarefa selecionada, mas não outras, portanto, se houver várias test.exe
tarefas em execução, não posso simplesmente fechar todas as tarefas retornadas por:
tasklist /fo csv /nh /fi "imagename eq test.exe"
Infelizmente, parece que nem tasklist
nem pslist
( aqui ) é capaz de retornar o campo Linha de Comando . Como posso superar esse problema?
process explorer
da Sysinternals pode mostrá-los na GUI. Portanto, a informação deve estar em algum lugar.
netstat -aon | grep \.0:6062
a porta 6062 e a última coluna seja o PID do seu programa. Não tenho certeza se isso é suficiente para você.tasklist /FI "PID eq <PID>"
daria o seu executável novamente.