从命令提示符或批处理文件启动sfc /scannow
资源检查器后,有没有办法取消该过程,或者是否必须让该过程完成?
在 Windows XP 中,sfc /cancel
允许这样做。然而,在 Windows 7 中似乎并非如此。
我曾尝试tasklist
找到图像名称,然后用taskkill
它来终止它,但我无法sfc /scannow
从列表中识别该过程。
有人能告诉我哪个进程应该被终止吗?或者还有其他方法可以取消吗sfc /scannow
?
编辑:
需要明确的是:Ctrl+C 只会结束命令提示符读出,而不会结束进程。这可以看作是sfc /scannow
在 Ctrl+C 获得响应后尝试运行另一个命令Another servicing or repair operation is currently running
。
答案1
我认为这可能是一个坏主意。另外,我认为你验证它是否已停止的方法可能是错误的。
我在电脑上运行了sfc /scannow
。启动后,我打开另一个 cmd 提示符并运行taskkill /IM sfc.exe /T /F
。这杀死了 sfce 进程及其子进程。我通过查看任务管理器的性能选项卡(我在 Windows 10 上)并看到磁盘活动下降到 0 来验证这一点。
我尝试再次运行“sfc /scannow”,它说另一个操作正在运行,但我怀疑这是因为 sfc 在某处标记了它正在启动,而我强行终止了它,因此无法取消标记。希望重启后这个问题能解决。
总之,taskkill /IM sfc.exe /T /F
将杀死名为 sfc.exe 的正在运行的进程 (/IM sfc.exe),杀死由该 sfc.exe 产生的子进程 (/T) 并强制执行 (/f)。
答案2
如果您收到“目前正在进行另一项服务或修复操作”消息
2种解决方案:
重启
重新启动 TrustedInstaller 服务:
Get-Service TrustedInstaller | Restart-Service