shell調用python腳本,並且向python腳本傳遞參數


1.shell調用python腳本,並且向python腳本傳遞參數:

shell中: python test.py $para1 $para2 python中:
import sys def main($canshu1, $canshu2) ..... main(sys.argv[1], sys.argv[2])

2.使用shell調用python中的函數:

python腳本如下:

test.py:

 
import ConfigParser  
  
config = ConfigParser.ConfigParser()  
config.read("test.conf")  
  
def get_foo():  
    return config.get("locations", "foo")  
  
def get_bar():  
    return config.get("locations", "bar")  

我想通過shell調用里面的get_foo,只需要在shell中執行一個調用的命令行即可:

python -c 'import test; print test.get_foo()'  

-c選項只是告訴python來執行一些python命令。

為了將結果存儲在變量中,你可以因此這樣做:

RESULT_FOO=`python -c 'import test; print test.get_foo()'`  

或者,等效於:

RESULT=$(python -c 'import test; print test.get_foo()')  


我們也可以一次調用所有方法,放入一個集合中,再調用切割方法獲取相應的值:

ALL_RESULTS=$(python -c 'import test; print test.get_foo(), test.get_bar()')  

如果需要第二個結果,並將其放入RESULT_BAR:

 RESULT_BAR=$(echo $ALL_RESULTS | cut -d' ' -f2)  

 

本文轉載自:https://blog.csdn.net/tanlon_0308/article/details/40423751


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM