![资源锁和 Power Shell](https://linux22.com/image/488715/%E8%B5%84%E6%BA%90%E9%94%81%E5%92%8C%20Power%20Shell.png)
有没有办法使用 Windows Power Shell 来跟踪哪个应用程序对文件具有资源锁?
以下是我所寻找的内容:
- 用于显示已锁定文件的应用程序的命令行或脚本。
- 上述操作的额外好处是可以检测出具有锁定的用户帐户以及锁定持续了多长时间。
跟进:
- 有一个电动工具系统内部这将允许您在上述命令 shell 中捕获完整的转储。
我发现了一个似乎也可以完成这项工作的脚本(替换为您想要查看的完整路径和文件):
PS> $handle = 句柄
PS> foreach ($line 在 $handle 中) { if ($line -match '\S+\spid:') { $exe = $line } elseif ($line -match '') { "$exe - $line" } }
答案1
处理来自 Windows Sysinternals 是一个命令行实用程序,可用于确定哪些句柄对文件具有锁定。您可以使用以下命令从命令行运行句柄
handle c:\fileToCheck
或者您可以编写一个 PowerShell 脚本来包装句柄的功能。