我加入了一个新小组,使用mongoDB开发数据库原型,我必须在现有项目中实现一些新脚本。
现在,我有一个脚本,任何人都可以在数据库中创建用户,但是我只想由数据库管理员创建用户。
我有一个python脚本arguments.py,其中在解析器中设置了所有数据库信息(主机,名称,端口等);一个bash脚本来创建用户。
我想使用bash脚本读取python文件中的解析器,以使用该文件中的数据库信息。
我试图将python文件读入bash脚本中,并将arguments.py的路径添加到$ PATH变量中,然后导入了该模块。但这不起作用。
def getArgs():
parser = argparse.ArgumentParser(formatter_class=argparse.ArgumentDefaultsHelpFormatter)
parser.add_argument("--host", help="Host", type=str, default="localhost")
parser.add_argument("--port", help="Port", type=int, default=27017)
parser.add_argument("--db", help="Db", type=str, default="database")
parser.add_argument("--userdb", help="Userdb", type=str, default="userdb")
args = parser.parse_args()
if args.config is not None:
conf = readConfig(args.config)
if "host" in conf["mongoDB"]: args.host = conf["mongoDB"]["host"]
if "port" in conf["mongoDB"]: args.port = conf["mongoDB"]["port"]
if "db" in conf["mongoDB"]: args.db = conf["mongoDB"]["db"]
if "userdb" in conf["mongoDB"]: args.userdb = conf["mongoDB"]["userdb"]
return args
if [ `echo $PATH | grep -c "../../scripts/src" ` -gt 0 ]
then
PATH=${PATH}
else
PATH=${PATH}:../../scripts/src;
fi
ARGUMENTS=`python -c 'from arguments import *; print " ".join(args())'`
运行这些脚本,出现以下错误: 追溯(最近一次通话): 文件“”,第1行,位于 ImportError:没有名为参数的模块