Создание доступного для записи каталога в Windows с использованием Python os.makedirs - PullRequest
0 голосов
/ 01 ноября 2011

Мне нужно создать подкаталог, если он еще не существует, а затем скопировать в него некоторые файлы. Однако всякий раз, когда я пытаюсь это сделать, я получаю сообщение об ошибке «Отказано в доступе». Я пробовал chmod с 777, а также stat.S_IWRITE, я пробовал os.system ('attrib -r), но ничего не работает. Может кто-нибудь помочь мне разобраться с этим? Я знаю, что на сайте есть похожий вопрос, но он говорит, что нужно использовать chmod, который мне не подходит.

Вот мой код:

beginpath = "C:\Users\foo"
fullpath = os.path.join(beginpath, foldername)
print fullpath
fullpath = fullpath.replace('\n', '')

##create a folder to hold the deleted files
deleted = os.path.join(fullpath, "Deleted")
print deleted
if not os.path.exists(deleted):
            os.makedirs(deleted)
            os.chmod(deleted, stat.S_IWRITE)
            print "created"



##do some other processing here


oldfile = os.path.join(fullpath, newpagename)
shutil.copyfile(oldfile, deleted)

1 Ответ

1 голос
/ 01 ноября 2011

Я думаю, что shutil.copyfile нужно полное имя файла назначения, а не только каталог.

Так что

shutil.copyfile(oldfile, os.path.join(deleted, newpagename))

должно сработать.

...