Ich brauche Hilfe hier.Get Kommandozeile von Prozess und Taskkill
Ich bin derzeit versucht, jeden Prozess zu töten, die nicht in einer weißen Liste (Kommandozeile) ist wie so, aber ist es nicht .:
@echo off
setlocal
set "whitelist=DcomLaunch RPCSS LocalServiceNetworkRestricted netsvcs LocalService LocalSystemNetworkRestricted NetworkService LocalServiceAndNoImpersonation taskhostex cmd dwm conhost services smss SearchIndexer Isass Explorer csrss conhost cftmon"
for /f "tokens=2 delims=," %%I in (
'wmic process get executablepath^,status /format:csv ^| find "\"'
) do (
set "proc=%%~I"
setlocal enabledelayedexpansion
set /p "=%%~I: "<NUL
wmic path win32_process get CommandLine | findstr /i "%whitelist%" >NUL && (
echo OK
) || (
echo UNACCEPTABLE!
taskkill /im "%%~nxI" /f
)
endlocal
)
Kein 'Get' in der WMIC-Befehlszeile eins. –
@Noodles Danke Mann! Verpasst das. Es funktioniert jedoch nicht und behauptet, dass alle Prozesse "OK" sind, selbst wenn sie nicht in der Whitelist sind. – DropItLikeItsHot