Il task manager di Windows ha una colonna con l'etichetta Command Line che mostra il comando che ha avviato l'attività specificata, con tutte le opzioni e i parametri, ad esempio:
test.exe -V -A 127.0.0.1 -P 6062
Ora devo identificare un determinato compito che è in ascolto su una determinata porta e / o è stato chiamato con una determinata combinazione di switch. Il mio obiettivo è chiudere l'attività selezionata, ma non altre, quindi se sono in test.exe
esecuzione più attività, non posso semplicemente chiudere tutte le attività restituite da:
tasklist /fo csv /nh /fi "imagename eq test.exe"
Sfortunatamente sembra che né tasklist
né pslist
( qui ) sia in grado di restituire il campo della riga di comando . Come posso superare questo problema?
process explorer
da Sysinternals può mostrarli nella GUI. Quindi le informazioni devono essere da qualche parte.
netstat -aon | grep \.0:6062
per la porta 6062 e l'ultima colonna sarebbe il PID del tuo programma. Non sono sicuro che sia sufficiente per te.tasklist /FI "PID eq <PID>"
darebbe di nuovo il tuo eseguibile.