PyCharm以sudo/root运行python脚本 您所在的位置:网站首页 实现pycharm运行sh文件 PyCharm以sudo/root运行python脚本

PyCharm以sudo/root运行python脚本

2023-10-13 04:43| 来源: 网络整理| 查看: 265

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 实验室设备网 版权所有