Как изменить текущий каталог оболочки пользователя с помощью Python? (Ubuntu / Linux) - PullRequest
1 голос
/ 20 октября 2019

Мы можем изменить текущий каталог в оболочке:

username@hostname:~/f1$ cd ~/f2
username@hostname:~/f2$ 

Можно ли написать питона (v2.7 и / или v3), который изменяет текущий каталог на один программно определенный?

Например

username@hostname:~/f1$ python change_dir.py
username@hostname:~/f2$ 

Ответы [ 2 ]

1 голос
/ 22 октября 2019

Как правильно сказали chepner и Sraw, дочерний процесс не может изменить текущий каталог своего родителя. Итак, вы можете позволить программе Python вывести желаемый каталоги используйте этот вывод в команде cd:

cd `python print_dir.py`
0 голосов
/ 21 октября 2019

Может быть, вы имеете в виду что-то вроде этого:

import os
os.chdir(os.path.join(os.path.dirname(os.getcwd()), 'f2'))
...