Python Создать вложенный каталог во временном каталоге
Я работаю над проектом с использованием Python(3.7), в котором мне нужно создать подкаталог во временном каталоге, я создал свой временный каталог как:
tempdir = tempfile.mkdtemp()
saved_unmask = os.umask(0o077)
temp_dir = os.path.join(tempdir)
Затем я попытался создать каталог в этом temp_dir
как:
helm_chart = temp_dir + "/helmChart"
subprocess2.call(['helm', 'create', helm_chart])
helm creates path/sub_path
всегда создавайте каталог внутри path
который temp_dir
в моем случае command
выше, создает каталог, когда я передал другой путь к каталогу, но он не создает каталог внутри temp_dir
,
Заранее спасибо!
2 ответа
Это можно решить, выполнив следующие действия:
import os
import tempdir
top_level = tempdir.TemporaryDirectory()
nested = tempdir.TemporaryDirectory(dir=top_level.name)
print(nested.name)
Это выведет /tmp/{top_level_temp_dir}/{nested_temp_dir}
Ключ - это dir
аргумент ключевого слова. Это сообщает TemporaryDirectory использоватьdir
прошел в качестве основы нового TemporaryDirectory.
У тебя есть saved_unmask = os.umask(0o077)
Ваш скрипт работает под вашим пользователем? Возможно, у него нет разрешения на запись во временный каталог
Следующее может работать:
import os
os.makedirs(os.path.join(tempdir, 'helmChart'))