Назад | Перейти на главную страницу

Rsync: копирование по отметкам времени только по имени файла

Я пытаюсь сделать почти то же самое в этом вопросе: Rsync: копирование только по отметкам времени

Но в этом случае некоторые файлы уже были изменены ...

Есть любой способ изменить только временную метку между папкой A (исходной) на B (новая) только по имени файла ... потому что имена файлов в двух местах остаются такими же.

Я думал, может быть, использовать сенсорный скрипт, но, похоже, это сложнее, если есть опция с использованием rsync, это всего лишь одна команда и Бинго!

Спасибо!

rsync не может делать то, что вы ищете. Однако вам повезло, потому что оба набора файлов находятся на одном компьютере, поэтому вы можете использовать -r флаг touch для копирования метки времени одного файла в другой.

Ты можешь использовать find скопировать даты на /source/files и установите отметки времени на /files/to/change

Это выведет команды, которые будут копировать метки времени, но не выполнять их на самом деле:

cd /source/files && find . -type f -exec echo touch -r '{}' /files/to/change/'{}' ';'

Результатом является список команд, которые можно выполнить для копирования меток времени. Я бы вставил 1-2 из них в bash и убедился, что они делают то, что вы ожидаете (используйте ls -l чтобы проверить временные метки обоих файлов до и после). Если команды делают то, что вы ожидаете, повторно запустите find команду, но удалите echo и команды будут выполняться вместо того, чтобы просто перечисляться, как раньше.