LINUX.ORG.RU

События inotify() под Linux: IN_ATTRIB+IN_DELETE_SELF+IN_IGNORED


0

1

Наблюдаются следующие события:

  int wd = inotify_add_watch(fd, message.filename, IN_MODIFY | IN_DELETE_SELF | IN_ATTRIB);
После удаления файла, приходит три нотификации:
- одна - с кодом IN_ATTRIB (0x0004),
- вторая - с кодом IN_DELETE_SELF (0x0400),
- третья - с кодом IN_IGNORED (0x8000).

Это так и задумано?
Какой смысл вкладывается в событие IN_IGNORED в данном случае?
«Объект наблюдения пропал»?

★★★★★

Еще как-то странно vim работает: при :wq для файла происходят те же самые события: IN_ATTRIB+IN_DELETE_SELF+IN_IGNORED , что и при rm -rf file.txt
Если же сделать echo >> file.txt, то происходит IN_MODIFY.

pacify ★★★★★
() автор топика
Ответ на: комментарий от pacify

>Еще как-то странно vim работает

Всё правильно, при сохранении он делает mv, дабы избежать множественной записи в один файл.

uzbl
()
Ответ на: комментарий от uzbl

OK. Всё, разобрался.
Спасибо.

pacify ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.