【问题标题】:How to kill all process that run under a folder?如何杀死在文件夹下运行的所有进程?
【发布时间】:2020-03-19 13:56:03
【问题描述】:

我想替换文件夹中的一些文件,我看到文件夹下有多个进程阻止我这样做。

如何杀死文件夹下运行的所有进程?

【问题讨论】:

  • 使用 Sysinternal 的 handle.exe 并像这样包装它:stackoverflow.com/questions/958123/…
  • 或者如果你更喜欢cmd,请使用wmic process
  • 支持的Windows方式是重命名打开的文件(打开的可执行文件可以重命名),将新文件复制进去,然后重启应用或重启电脑。

标签: powershell cmd process kill


【解决方案1】:

使用 powershell:

  1. 通过以下方式将当前 powershell 目录导航到目标路径:

cd "%*DestinationPath*%"

  1. Get-Process | ?{$_.path -and (test-path (split-path $_.path -leaf ))} | Stop-Process -Force

【讨论】:

    【解决方案2】:

    如果您更喜欢使用(因为 是您的标签之一),请使用wmic process

    @echo off
    set "dir=YOUR PATH HERE"
    
    for /f "skip=1 tokens=*" %%a in ('wmic process get executablepath') do (
        for /f "eol= tokens=*" %%A in ("%%a") do (
            echo(%%~dpA | findstr /I %dir% >nul 2>&1
            if %ERRORLEVEL% equ 0 taskkill /F /IM "%%~nxA"
        )
    )
    

    注意:这不是万无一失的,所有同名的进程都会被杀死

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-23
      • 1970-01-01
      • 2023-03-26
      • 1970-01-01
      相关资源
      最近更新 更多