Сначала (я использую Linux в терминале, (консольном режиме), (никакое графическое расширение), как на сервере. Вопрос следует: действительно ли возможно установить некоторый сценарий, который выделяет "opened file", например, в зеленом цвете (или кто-либо другой), (только имя файла, ничто сложное)? Почему? потому что это иногда я и мои коллеги редактируем те же файлы на сервере. Это не очень neccesary, но это - conveniet, Вы соглашаетесь? Конечно, текстовый редактор запрашивает, о Вас уже необходимо сохранить отредактированный файл. На всякий случай, И конечно не тяжелый сценарий, потому что это просто делает то, что это делает.
Спасибо так или иначе.
Один возможный способ видеть его (но часто не полезные для Вашей цели, посмотрите позже), использует fuser
команда, от psmisc
пакет.
Команда fuser -a *
будет работать своего рода ls
, и распечатает идентификатор процесса, если что-то сохранит файл открытым. Например:
⌂71% [romano:~/tmp] 1 % fuser -a *
/home/romano/tmp/example.log:
/home/romano/tmp/example.pdf:
/home/romano/tmp/example.tex:
затем в другом окна/терминал/виртуальные, console/connection, делают a cat >> example.tex
сохранять файл открытым, и:
⌂71% [romano:~/tmp] 1 % fuser -a *
/home/romano/tmp/example.log:
/home/romano/tmp/example.pdf:
/home/romano/tmp/example.tex: 7742
fuser
говорит Вам, что процесс с PID 7742 сохраняет файл открытым.
Тем не менее, много редакторов не сохраняет файл открытым; они читают, это в памяти (помните, что подобное Unix OSs имеет виртуальную память), и затем закройте его. Например, открытие файла example.tex
с vim
не имеет никакого эффекта на fuser
вывод.)
Таким образом, дважды редактирующее предотвращение оставляют редактору; vim
или emacs
используйте файл блокировки и предупредите Вас об открытии его дважды.
Можно также видеть комментарии и ответы в этом ТАК Вопросы и ответы.