编写带有参数的shell脚本,
while getopts ":i:o:m" opt; do
case $opt in
i) a="$OPTARG"
;;
o) b="$OPTARG"
;;
m) c="$OPTARG"
;;
\?) echo "Invalid option -$OPTARG" >&3
;;
esac
done
然后添加
python filename.py a b c
而是变量值,变量名称被发送到Python程序。
请帮助解决这个问题。
答案 0 :(得分:2)
如果要在shell中获取变量的值,请使用$ variable_name。 见下面的例子
root@s:/tmp# cat t.sh
#!/bin/sh
a="test"
b="test2"
c="test3"
python test.py $a $b $c
root@s:/tmp# cat test.py
#!/usr/bin/python
import sys
print sys.argv[1:]
root@s:/tmp# ./t.sh
['test', 'test2', 'test3']
答案 1 :(得分:-3)
您可以按名称访问环境变量,但需要导出它们。
on bash
myvariable="something"
export myvariable
on python
import os
print os.environ["myvariable"]