os.utime не устанавливает atime в сетевой папке - PullRequest
0 голосов
/ 26 апреля 2020

Итак, я загружаю файлы MS Access .mdb с помощью robocopy в сетевую папку.

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

Итак, я установил в исходном файле время до загрузки. Затем я беру время и помещаю его после загрузки в метаданные atime с помощью os.utime () в файле назначения. Но это не работает.

Мой минимальный рабочий пример находится здесь:

import os
import time

#Source File Local
srcFile=src[i]+r"/"+file[i]
#Destination File Networkfolder
destFile=dest[i]+r"/"+file[i]


aTimeSrc=os.stat(srcFile).st_atime
print("SrcFile:  " + srcFile)
print("aTimeSrc: " + str(aTimeSrc))
print("DestFile: "+ destFile)
print("aTimeDest: " + str(os.stat(destFile).st_atime))
mTimeDest=os.stat(destFile).st_mtime   
os.utime(destFile, (int(aTimeSrc),mTimeDest))
print("aTimeDest after setting:" + str(os.stat(destFile).st_atime))

Это мой вывод:

SrcFile:  
C:/Users/Odatas/Testdatabase.mdb
aTimeSrc: 1587907371.534435
DestFile: //somenetwork.com/Test/Testdatabase.mdb
aTimeDest: 1546604652.909
aTimeDest after setting:1546604652.909

Как вы можете видеть, aTime вообще не изменилось. Однако, когда я позволяю ему работать наоборот, я получаю это

SrcFile:  
//somenetwork.com/Test/Testdatabase.mdb
aTimeSrc: 1546604652.909
DestFile: 
C:/Users/Odatas/Testdatabase.mdb
aTimeDest: 1587907776.9042594
aTimeDest after setting:1546604652.0

Здесь Source - это сетевой файл, и он правильно устанавливает время. Так что я совершенно заблудился, почему он не работает в сетевой папке.

Из c основная проблема заключается в том, чтобы каким-то образом поставить метку времени, когда этот файл был помещен в сетевой путь внутри метаданных, чтобы я мог вернуться и прочитать его. И мое решение, использующее atime для этого при загрузке с помощью robocopy, не работает. Робокопия, похоже, не копирует atime из метаданных. Я не могу использовать mtime (модифицированный) для этого, так как мне также нужна информация, когда сам файл был последний раз изменен.

...