Jak użyć wmic do zabicia instancji cmd.exe wyszukującej za pomocą wiersza poleceń?

2

Widziałem, że można to wykorzystać wmic znaleźć id procesu wyszukiwania command line który został użyty do jego uruchomienia.

Ale mam 2 problemy.

  • Muszę użyć tego w pliku wsadowym, więc nie mogę odczytać danych wyjściowych wmic i wywołać zadania, muszę użyć jakiegoś grep
  • Nie udało mi się znaleźć częściowego dopasowania. Wolę szukać fragmentu linii poleceń.

Mogłem znaleźć następujący przykład:

wmic process where "CommandLine=start.bat", pid

Ale to, co chciałbym zrobić, jest bardziej podobne do:

wmic process where "CommandLine like %start.bat%", pid | taskkill 

To właśnie mam na myśli, używając wiersza poleceń: „cmd.exe” / c C: Mysql start.bat ”

Czy istnieje sposób zabić proces szukający linii poleceń, która go uruchomiła?

Revious
źródło
jeśli nie jest jasne, daj mi sugestię, abym mógł poprawić pytanie.
Revious
1
Moją pierwszą myślą byłoby wyszukanie identyfikatora za pomocą wiersza polecenia i zabicie przez ID, ale nie jestem pewien, czy podążam dokładnie za tym, co rozumiemy przez „użyj wmic, aby znaleźć id procesu szukającego wiersza poleceń, który został użyty do jego uruchomienia ”, więc pytanie jest trochę niejasne. Oprócz tego, aby poprawić swoje pytanie, aby uniknąć głosów negatywnych, myślę, że ludzie czują, że brakuje im wysiłku badawczego ... Co już próbowałeś? (PS nie zignorowałem cię;)).
Ƭᴇcʜιᴇ007
@ Ƭᴇcʜιᴇ007 bardzo dziękuję za pomoc, nie wiem dokładnie, jak to napisać .. Chcę napisać polecenie w pliku wsadowym, więc nie mogę wykonać wmic, odczytać danych wyjściowych i wywołać taskkill. Musi się zdarzyć po partii. I nie wiem, jak używać filtrów takich jak * lub% w wyszukiwaniu wmic; Chciałbym coś podobnego do: "proces wmic, gdzie" CommandLine jak% start% ", pid | zabić ten proces"
Revious
1
Wygląda na to, że chcesz xargs. Istnieje kilka wersji systemu Windows, na przykład z Cygwin.
Daniel B
1
@DanielB dzięki! ale nie mogę rozwiązać za pomocą standardowych narzędzi systemu Windows?
Revious

Odpowiedzi:

5

Jak użyć wmic do zabicia instancji cmd.exe szukającej jej poleceniem   linia?

Wygląda na to, że możesz to zrobić natywnie z partii systemu Windows z poniższym formatem. Wystarczy podłączyć nazwę pliku wsadowego (który jest ciągiem znalezionym za pomocą WMIC COMMANDLINE opcja) w %start.bat% część jak ja poniżej - użyłem start.bat w moim przykładzie poniżej, tak jak w swoim przykładzie.

WMIC KILL OKREŚLONY PRZYKŁAD PROCESU PLIKU SERII

WMIC PROCESS WHERE "COMMANDLINE LIKE '%start.bat%'" CALL TERMINATE

enter image description here

Dalsze czytanie i adres URL zasobów: http://www.dedoimedo.com/computers/windows-wmic.html

Pimp Juice IT
źródło