ConfigParser 在 root 用户中不工作
ConfigParser not working in root user
所以我写了一个 python 在 nginx 日志上工作的程序。
我制作了一个path.config文件
[path]
value =/var/log/myProject/access_log
日志路径正确,没问题。
在我的 python 脚本中,我做了
from ConfigParser import SafeConfigParser
CONFIG_FILE = SafeConfigParser()
CONFIG_FILE.read('path.config')
file_path = CONFIG_FILE.get("path", "value")
当我以普通用户身份运行它时,它没有显示任何问题。但是当我切换到 root 用户并尝试运行它时,会弹出一个错误
Traceback (most recent call last):
File "/root/docs/myscript.py", line 18, in <module>
file_path = CONFIG_FILE.get("path", "value")
File "/usr/lib/python2.7/ConfigParser.py", line 607, in get
raise NoSectionError(section)
ConfigParser.NoSectionError: No section: 'path'
这是否是 root 用户的任何权限问题?
如果满足以下条件,您的代码应该可以与 root 帐户一起使用:
- path.config 和你的脚本在同一个目录下
- 脚本在目录运行中。
我的意思是:
root@hostname:/tmp# cd your_dir/
root@hostname:/tmp/your_dir# ls
path.config script.py
root@hostname:/tmp/your_dir# python script.py
所以我写了一个 python 在 nginx 日志上工作的程序。
我制作了一个path.config文件
[path]
value =/var/log/myProject/access_log
日志路径正确,没问题。 在我的 python 脚本中,我做了
from ConfigParser import SafeConfigParser
CONFIG_FILE = SafeConfigParser()
CONFIG_FILE.read('path.config')
file_path = CONFIG_FILE.get("path", "value")
当我以普通用户身份运行它时,它没有显示任何问题。但是当我切换到 root 用户并尝试运行它时,会弹出一个错误
Traceback (most recent call last):
File "/root/docs/myscript.py", line 18, in <module>
file_path = CONFIG_FILE.get("path", "value")
File "/usr/lib/python2.7/ConfigParser.py", line 607, in get
raise NoSectionError(section)
ConfigParser.NoSectionError: No section: 'path'
这是否是 root 用户的任何权限问题?
如果满足以下条件,您的代码应该可以与 root 帐户一起使用:
- path.config 和你的脚本在同一个目录下
- 脚本在目录运行中。
我的意思是:
root@hostname:/tmp# cd your_dir/
root@hostname:/tmp/your_dir# ls
path.config script.py
root@hostname:/tmp/your_dir# python script.py