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


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.