我应该如何读取由某个进程打开的文件?

我应该如何读取由某个进程打开的文件?

我正在尝试读取 SAM.log,但是它正在被另一个进程打开,因此记事本无法打开它。

关于如何读取该文件有什么建议吗?我无法重新启动服务器。

(SAM.log 只是我在服务器上找到的一个示例)

答案1

看起来该文件已被独占锁定——在持有锁的进程终止之前,您无法访问它。

您可以做的是尝试在该进程终止或服务器重新启动时安排复制此文件。

答案2

这取决于锁的类型。
如果是独占锁定,则其他人无法访问它。
如果锁仍允许其他人读取,您仍然可以复制它或使用任何最初以“只读”打开文件并且仅在您修改它时才切换为读写的工具打开它。

在一些罕见的情况下,记事本可能无法打开它,但其他工具可以打开。Notepad++ 或 TotalCommander 的 Lister/Viewer 组件可以很好地解决此问题。

如果您不想在服务器上安装第三方软件(或不允许安装),您可以将该工具的便携式应用版本放在您的主驱动器上。
无论您使用什么系统,它总是在您需要时可用。

相关内容