У меня на работе разные VNC и много раз, я забываю сохранить или закрыть некоторые файлы, открытые в gvim. Позже я открою тот же файл в другом VNC. Хотя он скажет мне, что он уже открыт где-то еще из-за файла .swp. Но у меня может быть некоторая критическая несохраненная работа в бывшем VNC.

Есть ли способ узнать в каких VNC у меня есть файл? Пожалуйста помоги...

1 ответ1

0

Я не знаю, получит ли это вам достаточно информации для идентификации VNC, потому что у меня нет настройки VNC для тестирования, но это может помочь.

Обратите внимание на имя файла подкачки, который, по словам gvim, уже существует. Используйте fuser чтобы найти идентификатор процесса (PID) экземпляра gvim, в котором открыт файл подкачки. Затем используйте ps -Hf чтобы найти этот идентификатор процесса и его родителей. Самый верхний родительский процесс процесса gvim может иметь достаточно информации в командной строке для идентификации VNC.

Например, скажем, gvim сообщает, что файл подкачки /var/tmp/somefile.swp уже существует. Найдите PID другого экземпляра gvim, выполнив

fuser /var/tmp/somefile.swp

Скажем, PID - 12345. Выполните эту команду, чтобы узнать больше об этом процессе и его родителях:

ps -Hfe | less +/12345

В качестве альтернативы, среда экземпляра gvim, в которой открыт файл подкачки, может иметь переменную, которая идентифицирует VNC. Скажите, что у gvim есть PID 12345. Следующая команда позволит вам изучить среду этого процесса.

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .