gpt4 book ai didi

windows - 修复循环以保存基本的 Windows 进程及其路径,并终止其余进程

转载 作者:可可西里 更新时间:2023-11-01 11:47:42 24 4
gpt4 key购买 nike

我想保存一些系统进程,及其路径,以确保系统不崩溃,并杀死其余进程

例如:lsass.exe、winlogon.exe、conhost.exe、rundll32.exe 等

这是我的.bat:

set proc=,
:: proc
call:proc "lsass.exe"
call:proc "winlogon.exe"
call:proc "conhost.exe"
call:proc "rundll32.exe"

for /f "skip=3 tokens=1 delims= " %%a in ('tasklist /fi "username eq %username%"') do (
echo %proc%, | findstr /c:,%%a, 1>nul
if errorlevel 1 (
taskkill /f /im %%a /t
) else (
echo not kill
)
)

:: funcion proc
@echo off
pause
goto:eof
:proc
set getproc=%1
for /f "tokens=1 delims=," %%F in ('tasklist /nh /fi "imagename eq %getproc%" /fo csv') do set proc=%proc%,%%~F>nul
goto:eof

问题是我的脚本没有保存进程的路径,那么,如果有假进程在另一个位置运行,我的脚本会保存这两个进程。这就是为什么我需要保存Windows系统进程,包括它的原始路径

示例真实过程:

wmic process where "name='lsass.exe'" get ExecutablePath

出真实流程:

C:\Windows\system32\lsass.exe

示例假过程:

输出经验:

 C:\Documents and Settings\User\Local settings\Application Data\lsass.exe

或出局 7

 C:\Users\User\AppData\Roaming\lsass.exe
c:\Users\User\Local Setting\Temp\lsass.exe
c:\Users\User\AppData\Local\lsass.exe

注意:假进程可以从任何路径运行(与假进程关联的 .exe 文件可以存储在 PC 上的任何位置),除了系统文件夹(% windir%/system32 %windir%/sysWOW64 %windir%,等等)

不幸的是,直到现在,我的脚本还没有关闭假进程,只有我可以使用 Process Explorer 手动关闭。

要求:我需要的是保存真正的进程,用它的原始路径(lsass.exe、winlogon.exe 等),并杀死其余的。谢谢

最佳答案

检查 this solution , 通过 @JosefZ

@ECHO OFF
SETLOCAL EnableExtensions DisableDelayedExpansion

REM note double quotes REM added for debugging ↓↓↓↓↓↓↓↓↓↓↓↓
set "_var="%userprofile%","%Appdata%","%HOMEPATH%","%homedrive%\ProgramData","D:\Remote""
REM added for debugging ↑↑↑↑↑↑↑↑↑↑↑↑

REM wmic requires double backslashes in specified path
set "_var=%_var:\=\\%"

for %%G in (%_var%) do (
rem echo processing %%G
REM used `GET Caption` for debugging
rem WMIC PROCESS WHERE "Name = '%~1' and ExecutablePath Like '%%%%~G%%'" GET Caption

REM operational
WMIC PROCESS WHERE "Name = '%~1' and ExecutablePath Like '%%%%~G%%'" Call terminate
)

关于windows - 修复循环以保存基本的 Windows 进程及其路径,并终止其余进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40342327/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com