子流程不适用于 linux

subprocess doesn't work on linux

我想在 linux 上自动安装依赖项的过程,但是每当我 运行 我的命令没有任何反应。

代码:

commands_to_run = ["sudo apt-get update && sudo apt-get upgrade",
                   "sudo apt-get install build-essential cmake pkg-config",
                   "sudo apt-get install libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev",
                   "sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev",
                   "sudo apt-get install libxvidcore-dev libx264-dev",
                   "sudo apt-get install libgtk2.0-dev libgtk-3-dev",
                   "sudo apt-get install libatlas-base-dev gfortran",
                   "sudo apt-get install python2.7-dev python3-dev"]

import subprocess

for command in commands_to_run:
    subprocess.call(command, shell=True)

我尝试了很多不同的选项,但没有任何效果。我拒绝相信你不能在 Linux.

上自动安装依赖项

编辑:它似乎有效,但它什么也没做。当我想再次 运行 但通过终端时,它告诉我未安装依赖项并询问我是否要安装它 (y/n)。

apt-get 支持一个 -y 标志,可以自动回答任何问题。参见 https://linux.die.net/man/8/apt-get。那应该可以解决您的问题。