shell调用python脚本,并且向python脚本传递参数

1.shell调用python脚本,并且向python脚本传递参数

shell中:

#!/bin/sh
python test.py $para1 $para2

python的脚本test.py:

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)  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值