The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Поиск не открытых файлов"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"Поиск не открытых файлов"
Сообщение от zzz_fastcom emailИскать по авторуВ закладки on 28-Янв-04, 16:56  (MSK)
  Не знает ли кто, как организовать в UNIX (только POSIX) поиск не открытых файлов?
  Задача состоит в том чтобы найти в папке файлы никем в данный момент не открытые. Причем предполагается, что если файл не открыт, то он и не станет таковым.
  Есть такая утилита fuser, которая показывает, кто открыл данный файл, но аналогичной функции в man-ах я не нашел :-(
  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "Поиск не открытых файлов"
Сообщение от Murr Искать по авторуВ закладки on 29-Янв-04, 11:17  (MSK)
Переносимым (POSIX) способом никак.

P.S. "Папки" есть на рабочем столе, на файловой системе - директории (каталоги).

  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Поиск не открытых файлов"
Сообщение от SergeiZz Искать по авторуВ закладки on 29-Янв-04, 12:03  (MSK)
>P.S. "Папки" есть на рабочем столе, на файловой системе - директории >(каталоги).
Да! Так их, так их!

  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "Поиск не открытых файлов"
Сообщение от zzz_fastcom emailИскать по авторуВ закладки on 29-Янв-04, 13:24  (MSK)
>Да! Так их, так их!
Выпендриваться мы все горазды, а вот помоч...


  Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "Поиск не открытых файлов"
Сообщение от zzz_fastcom emailИскать по авторуВ закладки on 29-Янв-04, 13:25  (MSK)
>Переносимым (POSIX) способом никак.
Спасибо :-(
  Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "Поиск не открытых файлов"
Сообщение от Макс Зиналь emailИскать по авторуВ закладки on 01-Фев-04, 19:42  (MSK)
>>Переносимым (POSIX) способом никак.
>Спасибо :-(

Проще решается обратная задачка - найти все открытые файлы,
так как в "обычной" системе их существенно больше неоткрытых.

Точно не скажу, но /proc/<pid>/fd вроде бы много где есть.
По крайней мере точно видел его в Linux, Solaris и Tru64.
И если мне память не изменяет, по файликам в этих каталогах
можно определить _что_ именно открыто. Не уверен, правда, что
именно вот в этой части будет портабельно.

Дальше нужно циклически раскрыть символьные ссылки (если таковые
в полученных именах встретятся). Тем самым получен полный список
файлов, открытых неким процессом. Дальше - проще: перебрать все
процессы, постоянно расширяя списочек. Итого - полный список всех
открытых файлов. Осталось только "вычесть" его из полного списка
файлов :). А вообще занятие не очень полезное для душевного
здоровья :)

  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру