2012-01-30 112 views
1

我有一個bash腳本,是這樣的:從bash調用python,如何更改python工作目錄?

# gets all relevant files in the directory 
cp ../update_files/* ./transfer_dir 

# copy the python scripts to that directory 
cp ../tools/update_tool/* ./transfer_dir 

# execute the python scripts 
python ./transfer_dir/merge.py 

現在的問題是,當我嘗試執行python腳本,它作用似乎是,「工作目錄」的,而不是./transfer_dir和我無法提交先前複製的update_files文件

我該如何更改?我不想過多地修改我的python腳本,因爲它們大多位置不可知。

回答

7

使用cd

cd transfer_dir 
# execute the python scripts 
python merge.py 
# restore old directory 
cd ..       
+5

史詩* facepalm ... – Eric 2012-01-30 20:18:13

+2

@Eric:能夠嘲笑自己是很好的;讓你免受太多潰瘍的傷害。 – 2012-01-30 20:25:22

+0

正如你可能已經注意到,我在bash中遠遠不夠熟練,而且我期待這項任務非常複雜。 – Eric 2012-01-30 20:35:01

1
  1. 您可以更改bash腳本 @see ubuntus回答change working dir via bash

  2. 你可以改變工作目錄中的腳本本身

    路徑

    進口口令

    os.chdir( 「transfer_dir」)

我會建議使用的解決方案1,只是增加了2. completenes。