Атомная замена файлов в Python - PullRequest
7 голосов
/ 04 октября 2011

Каков рекомендуемый способ атомарной замены файла в Python?

т.е. если сценарий Python прерывается, происходит сбой питания и т. д. Файлы не имеют высокой вероятности оказаться в несогласованном состоянии (половина записана на диск).

Предпочтительным является решение для платформ Linux / UNIX.

(я знаю, что получение 100% атомарных операций может зависеть от вашей файловой системы, но, по крайней мере, шансы на повреждение будут минимальными)

1 Ответ

13 голосов
/ 04 октября 2011

Создайте новый файл и os.rename () над существующим файлом.Это атомарно на большинстве платформ при большинстве условий .

...