Всем привет!
В папке лежит файл время обращения к которому (проверено по ctrl + x - i в mc) 31 августа прошлого года:
# ls -l /work/
-rw-rw-rw- 1 nobody nobody 2344 Aug 31 15:03 test
Пробовал разные варианты как его найти с помощью find и ключа atime но ничего не получается:
# find /work/ -atime +0 -print
# find /work/* -atime +0 -print
# find /work/* -atime +100 -print
# find /work/* -atime +1 -print
Кто знает почему так? Дистрибутив OpenSuse 11.1, findutils-4.2.31-24.
find поиск по времени обращения к файлам
Модераторы: /dev/random, Модераторы разделов
-
- Администратор
- Сообщения: 5403
- ОС: Gentoo
Re: find поиск по времени обращения к файлам
Вы atime с mtime не путаете? В приведённом вами выводе ls указано именно mtime.
-
- Сообщения: 92
Re: find поиск по времени обращения к файлам
Нет не путаю. Смотрел через mc. Если я просматриваю статистику по файлу то этот атрибут меняется? Может он изменился когда я просматривал информацию?
-
- Администратор
- Сообщения: 5403
- ОС: Gentoo
Re: find поиск по времени обращения к файлам
Пока вы просматриваете только "внешнюю" статистику, для которой не нужно просматривать содержимое, он не меняется. Этот атрибут означает время последнего чтения содержимого.
Сделайте
ls -l --time=atime
-
- Сообщения: 92
Re: find поиск по времени обращения к файлам
Тот файл у меня уже "обновился" по дате. А других таких найти не могу... Т.е. команда стала работать нормально.
Может дело в том, что когда давал команду эта дата обновилась не заметно для меня...
Впрочем если получиться повторить ситуацию - отпишусь. Спасибо.
Может дело в том, что когда давал команду эта дата обновилась не заметно для меня...
Впрочем если получиться повторить ситуацию - отпишусь. Спасибо.
-
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
Re: find поиск по времени обращения к файлам
и?
На самом деле, у любого файла имеется 4 временных метки:
- время последнего доступа. (время, когда файл в последний раз читали, но этот штамп НЕ обновляется при чтении атрибутов, например при "просмотре" каталога mc) atime
- время последней модификации. Это когда файл последний раз изменяли. mtime
- время последнего изменения состояния - когда у файла сменили его хозяина и/или права доступа. Или время создания, если с момента создания не было смены состояния. ctime
- время удаления. имеет смысл только для удалённых файлов
первые три временные метки можно посмотреть командой stat или find -printf ...
так не бывает...
ЗЫж кроме всего прочего, команда find умеет искать файлы, которые изменились ПОСЛЕ изменения другого файла. См опции -newer, а также -cnewer & -anewer. Можно создать файл с нужным временным штампом командой touch
-
- Сообщения: 2268
- Статус: Линукссаксовец
- ОС: MS Windows XP Home SP3
Re: find поиск по времени обращения к файлам
Все верно, хотел бы только заметить, что при изменение содержимого файла меняется одновременно mtime и ctime.
Внимание: У меня под рукой нет машины с Linux. Я не использую эту ОС. Ответы я даю либо по памяти, либо мне помогает гугл. Тщательно читайте маны по тем командам и конфигурационным файлам, которые я упоминаю.
0xDEFEC8ED
0xDEFEC8ED
-
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
Re: find поиск по времени обращения к файлам
ага. причём время доступа не меняется (если только писать, но не читать что получается).