#!/bin/bash
#=================
function func1 {
#=================
echo "I have chickens"
func2 100
}
#================
function func2 {
#================
number=$1
python << END
print "I have", number, "chickens"
END
}
func1在bash中,我想给func2传递一个参数。在func2中,我想使用python打印参数。
所需输出:
我有鸡
我有100只鸡
发布于 2015-12-02 23:20:18
常规bash字符串变量替换有效:
$ export n=3
$ python << END
> print "I have ${n} chickens"
> END输出:
I have 3 chickens正因为如此,如果你想继续你的(相当不同寻常的)方法,你必须非常小心。一种更常见的方法是将Bash和Python程序放在单独的文件中,然后使用一些命令行参数从Bash脚本运行Python脚本。然后,您可以作为sys.argv从Python访问它们,或者,如果您想做更复杂的事情,可以使用argparse访问它们。
https://stackoverflow.com/questions/34046310
复制相似问题