2016-09-21 20 views
0

我想创建Python脚本jump.py,它允许我跳转到一组预定义的目录,看起来不可能做到这一点,因为脚本退出后,以前的目录是恢复:Python脚本来改变用户的目录

import os 

print(os.getcwd()) 
os.chdir('..') 
print(os.getcwd()) 

[micro]$ python jump.py 
/home/iset/go/src/github.com/zyedidia/micro 
/home/iset/go/src/github.com/zyedidia 
[micro]$ 

是,在所有可能降落到[zyedidia]目录的脚本完成后?

+0

看到[这个可怕的黑客](http://stackoverflow.com/questions/431684/how-do-i-cd-in-python)....,答案是在底部5投票(截至今天) – 576i

+0

是否必须使用Python来完成任务? –

+0

@SimonPA我想尽可能保持跨平台,而不需要编译。 –

回答

0

你可以试试这个;

import os 

print(os.getcwd()) 
os.chdir('..') 
print(os.getcwd()) 
shell = os.environ.get('SHELL', '/bin/sh') 
os.execl(shell, shell) 
+1

我想避免执行子shell以避免'cd'和'shell进程'堆栈溢出。 –