2014-12-03 88 views
0

我有一個Python腳本,有兩個參數,當我運行該腳本輸出3頁新的文件,因爲它被認爲太:Python腳本具有輸出,但在循環殼它不輸出

>>> python importpymol2.py 65_*.pdb BTB_old.pdb 

但是當我把通過外殼循環,也改變目錄(腳本在每個目錄):

>>>> for i in *;do current_dir=$PWD; cd $PWD/*;python importpymol2.py 65_*.pdb BTB_old.pdb;cd $current_dir; done 

但是,它運行完全正常的使用,它不輸出文件例外....我怎麼才能得到它輸出的文件?

+2

如何爲'CD $ PWD/*'認爲,如果有多個匹配工作''(或者你不會有一個循環的話)。該片段實際上是否正確工作? – 2014-12-03 19:40:29

回答

1

有可能是在你的shell命令一個錯字,試圖將其改爲:

for i in *;do current_dir=$PWD; cd $PWD/$i;python ../importpymol2.py 65_*.pdb BTB_old.pdb;cd $current_dir; done 

(我假設importpymol2.py位於您的$ PWD)

2

不要試圖cd回來。相反,只是在一個子shell中運行:

for i in *; do (cd $i; python ...;); done