使用OS库运行python脚本时权限被拒绝?

时间:2019-06-07 16:45:34

标签: python

我的目标是运行一个位于其他文件夹中的脚本。特别是,我正在尝试初始化一个完全不同的文件夹中的flask api。通常,我会从终端运行我的Flask API,如下所示:

$ python my_app.py -config_files conf.ini

然后api正常运行。但是,由于我试图从另一个项目文件夹运行api,所以尝试了:

api = '/the/path/to/the/api/folder/project'
os.system('{} python my_app.py -config_files conf.ini'.format(api))

但是,尝试运行我的api之后,我得到了:

32256

[I 00:30:05.404 NotebookApp] Saving file at /noteebook.ipynb
sh: 1: /api/project/folder/path: Permission denied
sh: 1: /api/project/folder/path: Permission denied

运行在另一个python脚本内不同文件夹中的python脚本的正确方法是什么?

2 个答案:

答案 0 :(得分:1)

api = '/the/path/to/the/api/folder/project'
os.system('{} python my_app.py -config_files conf.ini'.format(api))

该命令最终将是:

/the/path/to/the/api/folder/project python my_app.py -config_files conf.ini

...这没有道理。

也许您想要这个吗?

os.system('python {}/my_app.py -config_files conf.ini'.format(api))

答案 1 :(得分:0)

您需要在脚本名称前添加路径,因此最终路径将是: python /the/path/to/the/api/folder/project/my_app.py -config_files conf.ini

api = '/the/path/to/the/api/folder/project'
script_path = api + '/my_app.py'
os.system('cd {api};python {script_path} -config_files conf.ini'.format(script_path=script_path, api=api))