cd не работает в скрипте

скрипт для деплоя джанго проекта на ubuntu nginx server import os a = input("your directory path : ") os.system(' cd ' + a)

я хочу чтоб про правильном введении адреса меня перекидовало в папку но почему то команда 'cd' не работает а 'ls' все ок показывает


Ответы (2 шт):

Автор решения: Stanislav Volodarskiy

cd работает как и ожидается: он меняет текущий каталог для процесса который его вызывает (я тут всё немного упрощаю, но пока и так сойдёт). Ваша проблема что os.system создаёт новый процесс для которого cd и меняет каталог. Каталог в процессе Python, где живёт ваш скрипт, остаётся неизменным.

Используйте os.chdir. Он поменяет текущий каталог для процесса Python в котором исполнится.

Надеюсь я вам помог. А теперь важное: если возможно, никогда не меняйте каталог внутри процессов. Это очень, очень плохая идея. Текущий каталог придуман для удобства пользователя при вводе команд в консоли. Программы отлично обходятся без этого.

→ Ссылка
Автор решения: Kers

Для указания директории в скрипте используйте os.chdir(YOU_DIR)

→ Ссылка