1

Я хочу пометить всю свою музыкальную коллекцию (MP3, OGG и т.д.) Информацией о воспроизведении, но я не хочу, чтобы они теряли свою первоначальную временную метку, так как иногда я хочу знать, когда я добавляю файл в свою коллекцию, поскольку это помогает мне найти их, отсортировав их в моем любимом файловом менеджере по дате.

Итак, вот мой вопрос: есть ли инструмент (или команда, которую я могу использовать в пакетном файле), который я могу использовать для пакетного резервного копирования только отметок времени всех файлов перед выполнением повторной привязки, а затем, чтобы иметь возможность позже восстановить их временные метки обратно? Если это можно сделать рекурсивно для всех папок ниже, это будет очень приятно!

1 ответ1

2

Предполагая, что вы используете Windows, вы можете сделать это с помощью TakeCommand Console LE.

Для резервного копирования отметок времени используйте следующую команду:

pdir /(fpn"|"dy/m/d"|"th:m:s) /s /a:-d * >c:\flist.txt

Это создаст файл (здесь c:\flist.txt), содержащий имена файлов (включая пути) и их дату (в формате y/m/d) и время (в формате h:m:s). Параметр /s делает его рекурсивным, поэтому он будет подбирать файлы в подкаталогах.

Чтобы избежать проблем с пробелами в каталогах и именах, эта версия команды использует «|» подписать как разделитель для полей.

Пример файла, созданного командой выше:

[C:\Test]type c:\flist.txt
C:\Downloaded Files\JPSoft\TCCLE10\English.dll|2009/08/29|13:11:36
C:\Downloaded Files\JPSoft\TCCLE10\French.dll|2009/08/29|13:11:38
C:\Downloaded Files\JPSoft\TCCLE10\German.dll|2009/08/29|13:11:38
C:\Downloaded Files\JPSoft\TCCLE10\license.txt|2009/01/25|20:09:04
...

Чтобы восстановить, используйте команду:

for /f "tokens=1,2,3 delims=|" %a in (@c:\flist.txt) do touch /d%b /t%c "%a"

Эта команда проанализирует файл, сохраненный выше, и выполнит несколько touch команд, установив для файлов сохраненные даты и время. "|" знак указывается как разделитель для полей.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .