Я пытаюсь скопировать файлы из исходного каталога в удаленный каталог, используя shutil()
, однако мне нужно выполнить несколько проверок следующим образом.
Не копируйте файл нулевого байта на пульт.
Если файл уже завершен на удаленном компьютере, не копируйте его снова, если файл в источнике не изменил содержимое или не обновил.
Я ищу каталог текущего месяца, поэтому перейдите к каталогу, если он доступен для текущего месяца, как это должно быть в январе для текущего месяца.
Импорт модулей:
import os
import glob
import shutil
import datetime
Переменная для выбора текущего месяца:
Info_month = datetime.datetime.now().strftime("%B")
Фрагмент кода:
for filename in glob.glob("/data/Info_month/*/*.txt"):
if not os.path.exists("/remote/data/" + os.path.basename(filename)):
shutil.copy(filename, "/remote/data/")
Приведенный выше код не принимает переменную Info_month
Однако жесткое кодирование имени каталога работает.
У меня проблемы из-за недостатка знаний Python.
Как включить переменную Info_month
в исходный каталог dir?
Как поставить флажок, чтобы не копировать файлы нулевого байта?
os.path.getsize(fullpathhere) > 0
Моя элементарная глупая логика:
for filename in glob.glob("/data/Info_month/*/*.txt"):
if os.path.getsize(fullpathhere) > 0 :
if not os.path.exists("/remote/data/" + os.path.basename(filename)):
shutil.copy(filename, "/remote/data/")
else:
pass