Изменить время создания файла в файловой системе FAT

8

Мне нужен способ изменить время создания файла на смонтированном томе FAT32. Я должен сделать это, потому что мой MP3-плеер будет читать только файлы, отсортированные по времени создания.

Если я найду способ установить время создания файла (как это touchможно сделать с изменением / временем доступа) файла, тривиальный скрипт позволит считывать MP3-файлы в правильном порядке (как ожидается, в алфавитном порядке).

Но я еще не нашел решения, и мои поиски были напрасны. Я надеюсь, что вы, ребята, можете мне помочь!

Artefact2
источник

Ответы:

5

Первое, что приходит на ум, - mvэто файл (ы) cpво временный файл, временный файл со старым именем файла и удаление временного.

Я только что сделал быструю проверку:

touch foo
ls -l foo

возвращает:

0 -rw-r--r-- 1 shunz shunz 0 2011-03-22 11:07 foo

подождите несколько минут и затем:

mv foo bar
ls -l bar

0 -rw-r--r-- 1 shunz shunz 0 2011-03-22 11:07 bar

обратите внимание, что время создания не изменено, а:

cp bar foo
ls -l foo bar

0 -rw-r--r-- 1 shunz shunz 0 2011-03-22 11:07 bar
0 -rw-r--r-- 1 shunz shunz 0 2011-03-22 11:10 foo

Теперь Foo создан в настоящее время!

РЕДАКТИРОВАТЬ

извините, забыл упомянуть, пробовал это на отформатированной в FAT32 флешке под Ubuntu.

Мистер Шунц
источник
4

В конце концов я использовал fatsort , который прекрасно справляется со своей задачей, и это гораздо быстрее, чем копировать файлы снова и снова.

Artefact2
источник