Дата останнього зміни каталогу


80

Цікаво, коли змінюється дата останньої зміни каталогу. Я змінив файл у певному каталозі (через FTP), але LMD каталогу не змінився. Як передбачається функціонувати?

Відповіді:


126

Mtime (час модифікації) у самому каталозі змінюється, коли файл або підкаталог додається, видаляється або перейменовується.

Зміна вмісту файлу в каталозі не змінює ні самого каталогу, ні оновлення модифікованого часу файлу або підкаталогу. Якщо ви змінюєте дозволи на каталог, ctime змінюється, а mtime - ні.


2
Чи модифікується це при зміні підкаталогу?
Flimm

6
@Flimm: це залежить від характеру модифікації підкаталогу. Якщо файл додано в підкаталог або видалено з нього, тоді ні. Якщо підкаталог перейменовано, тоді так (оскільки нове ім'я зберігається в каталозі, що містить підкаталог, тому "насправді" змінюється запис у головному каталозі, а в підкаталозі нічого не змінюється).
Джонатан Леффлер

7
@Asmageddon: якщо щось модифікується на кілька рівнів у глибину, неможливо дізнатися, що з часу модифікації каталогу кілька рівнів вгору. Подумайте, що це спричинить за собою - врешті-решт, кореневий каталог потрібно було б змінювати щоразу, коли будь-який файл будь-де змінювався, роблячи його in-memory inode гарячою точкою для кожного процесу, який коли-небудь робить щось із будь-яким файлом.
Джонатан Леффлер

5
@ cram2208: Gedit створює файл резервної копії в каталозі, або файл блокування, або щось подібне? Що станеться, якщо ви використовуєте touch somefileзамість gedit?
Джонатан Леффлер

3
@JonathanLeffler Хороші ідеї, які я повинен сказати, тепер я повністю розумію, що відбувалося. Це був файл резервної копії в каталозі, а не модифікація самого файлу. При використанні дотику до файлу він фактично змінив LMD файлу, але не каталогу. Потрібно бути обережнішими щодо таких деталей ...
cram2208

28

Каталог схожий на файл, який містить у ньому список імен файлів (дійсно, можливо, ви випадково відкрили каталог у редакторі, де ви можете побачити, що це переважно читабельний список його вмісту) - тому він змінений коли файл у цьому каталозі додається, видаляється або перейменовується.


1
Чи модифікується це при зміні підкаталогу?
Flimm

1
@Flimm Здається, що лише оновлює mtime вміщуваного каталогу, інакше він з’явиться до кореня.
Нік Вівер

1
З-за інтересу, які редактори дозволяють відкривати каталог безпосередньо? Здається, більшість (навіть edі cat) скаржиться або пропонують замість цього відкрити список файлів.
naught101

@ naught101 vim з радістю відкриє каталог.
Ефір

5
@Ether: Він не "відкриває каталог", як при фактичному читанні даних inode каталогу (або того, що коли-небудь еквівалентно в інших файлових системах). Він просто надає файловий браузер для цього каталогу.
naught101
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.