gpt4 book ai didi

python - 通过 Python 启动新终端来安装包

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:22:00 27 4
gpt4 key购买 nike

我正在编写一个操作系统安全评级工具,它是一个 GUI 软件,可以检查重要安全组件的可用性,并允许用户使用单个“安装按钮”安装缺少的组件(例如 IDS)

我使用 Pycharm 作为我的 IDE。我想通过我使用以下代码的 GUI 安装缺少的软件组件:

os.system("sudo apt-get install snort-mysql")

当用户点击“安装”(通过我创建的 GUI)时,上面的代码将被执行,他将能够像往常一样跟进安装。

但是,由于我使用的是 IDE,所以当单击安装按钮时,问题是我无法输入密码,因为我在 IDE 的跟踪中得到以下信息:

sudo:不存在 tty 且未指定 askpass 程序

抱歉,请重试。

我尝试使用 gksudo 并设法输入了密码。但是我在安装开始时得到以下信息:

此操作后,将使用 18.3 MB 的额外磁盘空间。

你想继续[Y/n]吗?中止。

gksudo with force y 结果 gksudo: invalid option -- 'y'

我想知道是否有办法启动一个单独的终端并在那里开始安装。

最佳答案

您可以使用 gksudo 并将 -y 选项传递给 apt-get install 而不是 gksudo,即

os.system('sudo "apt-get install snort-mysql"')

os.system("sudo \"apt-get install snort-mysql\"")

您还可以将 subprocess.Popen 与管道一起使用,以允许您与子流程进行交互。

关于python - 通过 Python 启动新终端来安装包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20028917/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com