Я использую эту функцию довольно часто для загрузки новых файлов из общих путей в сети и для зеркалирования определенных каталогов на моем жестком диске к общему пути для доступа других. Он работал достаточно хорошо, пока я недавно не начал работать с папкой, которая находится по всему миру.Проверить последние файлы в общей папке?
Целью этого является просто скопировать любой файл из папки на мой компьютер, который не существует в определенной папке. Это означает, что он проверяет каждый файл, который довольно дорог при работе с большим количеством файлов и медленным сетевым путем. Я буквально нуждаюсь только в этом, чтобы ежедневно запускать данные предыдущих дат.
Например, filename_2016-03-12.csv - это файл, который мне нужно скачать на 13-м. Мне не обязательно проверять ВСЕ файлы (поскольку я делал это уже и в идеале, это должно запускаться каждый день автоматически). Мне просто нужны самые последние файлы. Могу ли я изменить это, чтобы посмотреть только на последние файлы?
def copytree(src, dst, symlinks=False, ignore=None):
if not os.path.exists(dst):
os.makedirs(dst)
for item in os.listdir(src):
s = os.path.join(src, item)
d = os.path.join(dst, item)
if os.path.isdir(s):
copytree(s, d, symlinks, ignore)
else:
if not os.path.exists(d) or os.stat(s).st_mtime - os.stat(d).st_mtime > 1:
shutil.copy2(s, d)
Является ли это линукс? 'rsync' предназначен для задачи. – tdelaney
Это окна – trench