关于 swp 文件和在不同的 vnc 中打开的同一个文件

关于 swp 文件和在不同的 vnc 中打开的同一个文件

我在工作时使用不同的 VNC,很多时候我忘记保存或关闭在 gvim 中打开的一些文件。稍后,我会在另一个 VNC 中打开同一个文件。虽然它会告诉我由于 .swp 文件,该文件已在其他地方打开。但是,我可能在前一个 VNC 中有一些未保存的重要工作。

有什么方法可以找出我在哪些 VNC 中打开了文件?请帮忙...

答案1

我不知道这是否能给你足够的信息来识别 VNC,因为我没有 VNC 设置来测试它,但它可能会有所帮助。

注意 gvim 表示已存在的交换文件的名称。使用fuser查找已打开交换文件的 gvim 实例的进程 ID (PID)。然后使用ps -Hf查找该进程 ID 及其父进程。gvim 进程的最顶层父进程可能在命令行中有足够的信息来识别 VNC。

例如,假设 gvim 告诉您交换文件 /var/tmp/somefile.swp 已经存在。通过执行以下指令查找另一个 gvim 实例的 PID

fuser /var/tmp/somefile.swp

假设 PID 为 12345。执行此命令可以查找有关该进程及其父进程的更多信息:

ps -Hfe | less +/12345

或者,打开交换文件的 gvim 实例的环境可能有一个标识 VNC 的变量。假设 gvim 的 PID 为 12345。以下命令将让您探索该进程的环境。

tr '\0' '\n' < /proc/12345/environ | less

相关内容