При попытке найти простой способ сделать загрузка только изменила файлы через FTP

maseterIndex = [i for i, x in enumerate(array) if x == "name: master"]
secIndex = [i for i, x in enumerate(array) if x == "name: sec"]
mergedlist = maseterIndex + secIndex
for index in mergedlist:
    #do something with next line
    print array[index+1]
6
задан DavidG 8 July 2014 в 09:43
поделиться

5 ответов

Самый надежный путь состоял бы в том, чтобы сделать md5 хеши всех локальных файлов, о которых Вы заботитесь и храните его в файле. Таким образом, файл будет содержать список имен файлов и их хешей md5. Храните тот файл на своем FTP-сервере. Когда Вы хотите обновить файлы на своем FTP-сервере, загрузите файл, содержащий список, сравните это со всеми Вашими локальными файлами и загрузите файлы, которые изменились (или являются новыми). Тем путем Вы не должны волноваться об архивных битах, измененной дате, или смотрящий на размеры файла, использование которых никогда не может быть на 100% надежным.

Используя размеры файла не надежно по очевидной причине - файл мог изменить, но иметь тот же размер. Я не поклонник использования архивного бита или измененной даты, потому что или тех мог быть перепутан, если Вы копируете или восстанавливаете свой локальный каталог с другой резервной программой.

5
ответ дан 9 December 2019 в 20:50
поделиться

Вы действительно настаиваете ftp, или можно ли использовать rsync вместо этого?


Если ftp идея требуемого mhenry1384, примерно что rsync делает (хорошо половина из него так или иначе, rsync также взгляды на время изменения для файлов, которые отличаются...).

3
ответ дан 9 December 2019 в 20:50
поделиться

(Ожидающий комментария к основному вопросу, которому ответят прежде, чем расшириться)

Стратегия была бы:

  1. Найдите файлы измененными с помощью дат, времена, архивные биты или хеши (в зависимости от ОС)
  2. Используя этот список, генерируйте сценарий FTP, Поместив те файлы
  3. Запустите скрипт FTP.
2
ответ дан 9 December 2019 в 20:50
поделиться

Вы рассмотрели использование архивного бита на файле?

0
ответ дан 9 December 2019 в 20:50
поделиться

Jonas,

Как часто файлы, вероятно, изменятся?

Если они изменяются на предсказуемом периоде времени, Вы могли бы рассмотреть использование измененных и других атрибутов даты на файле.

0
ответ дан 9 December 2019 в 20:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: