2017-07-19 145 views
0

我用os.system()通过cd更改目录就像一个功能follwing:os.system()无法在每次第一次执行我的命令时,为什么?

def xxx(): 
     os.system("cd ../../../../../..") 
     print "move dir: "+os.getcwd() 

然后我用这个函数在脚本中7次:

def testcase(): 
    …… 
    xxx(); 
    …… 

if __name__=='__main__': 
    testcase1() 
    testcase2() 
    …… 
    testcase7() 

日志显示我只成功了6次,第一次总是失败,如:

move dir: /home/tzhang/luatest/alphaless/.build/experimental_trusty/alphaless/tests/tests.py.rundirs/1 

move dir: /home/tzhang/luatest/alphaless 

move dir: /home/tzhang/luatest/alphaless 

move dir: /home/tzhang/luatest/alphaless 

move dir: /home/tzhang/luatest/alphaless 

move dir: /home/tzhang/luatest/alphaless 

move dir: /home/tzhang/luatest/alphaless 

/home/tzhang/luatest/alphaless/.build/experimental_trusty/alphaless/tests/tests.py.rundirs/1

是在每个测试用例

什么导致了错误的开始位置?

+0

你可以提供一个[简短但完整的程序(https://stackoverflow.com/help/mcve),演示了您遇到的问题? –

回答

2

而不是os.system(),请使用os.chdir()

使用os.system()您正在执行命令,但使用os.chdir()时,您正在将当前工作目录更改为给定路径。对于这种情况,更具说服力。

相关问题