繁体   English   中英

如何将参数从bash脚本传递给使用python的函数?

[英]How to pass arguments from a bash script to a function that uses python?

#!/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打印参数。

所需的输出:

我有鸡

我有一百只鸡

常规bash字符串变量替换有效:

$ export n=3
$ python << END
> print "I have ${n} chickens"
> END

输出:

I have 3 chickens

因此,如果您希望继续使用(相当不寻常的)方法,则必须非常小心。 一种更常见的方法是将Bash和Python程序放在单独的文件中,并使用一些命令行参数从Bash脚本运行Python脚本。 然后,您可以以sys.argv从Python访问它们,或者,如果您想做更复杂的事情,可以使用argparse

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM