PyCharm以sudo/root运行python脚本 | 您所在的位置:网站首页 › 实现pycharm运行sh文件 › PyCharm以sudo/root运行python脚本 |
sudo pycharm
这可以以root执行python脚本,但是不应该使用 sudo 运行 pycharm。这不是一个好方法。sudo 不会将整个环境从user传递到superuser环境。 PyCharm配置 python interpreter 1. 先通过 which python 获得 python 指令所在路径: $ which python /usr/local/bin/python这个python可能是Python2也可能是Python3,取决自己的默认配置,我这里默认是python3, /usr/local/bin/python下既有python2.7文件,也有python3.8文件。 2. 创建 sudo 脚本如上得到了其所在路径是/usr/local/bin/python ,因此我创建了一个文件:vim /usr/local/bin/python-sudo.sh ,然后i填入: #!/bin/bash sudo /usr/local/bin/python "$@"如果要用python2, 则填: #!/bin/bash sudo /usr/local/bin/python2 "$@"wq编辑完退出后,给其执行权限: sudo chmod -R 777 /usr/local/bin/python-sudo.sh 3. 使用脚本作为 Python 解释器在 PyCharm 中,转到"Settings">"Python Interpreter"。单击当前项目解释器下拉列表旁边的齿轮图标,然后选择"Add..."。然后在"Virtualenv Environment"选择"Existing environment", 勾选"Make available to all projects",“Interpreter"浏览到 python-sudo.sh 并选择它,并将其设置为项目的解释器。 现在,运行或调试时,代码将以 root 用户身份运行。 4. 当前用户执行 sudo python 不需要输入密码执行如果不使用NOPASSWD选项,它在技术上仍然可以工作,但会有点烦人,必须在每次运行时提供密码。如果从终端窗口运行 PyCharm,sudo 提示会出现在那里,而不是 PyCharm 中的任何位置。 此外,当将shell脚本添加为解释器时,PyCharm显然会多次执行它,因为终端会收到带有密码提示的垃圾邮件。 我们可以这样操作: sudo visudo -f /etc/sudoers.d/python添加以下格式的行: = (root) NOPASSWD:例如: bgone CN-FEDORA = (root) NOPASSWD: /usr/local/bin/python |
CopyRight 2018-2019 实验室设备网 版权所有 |