读取使用bash脚本在python中定义的解析器

时间:2019-06-25 17:27:18

标签: python bash

我加入了一个新小组,使用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:没有名为参数的模块

0 个答案:

没有答案