-2

我正在使用 python,并尝试开发一个涵盖以下几点的脚本

例如,当我们尝试在 linux 机器上安装特定软件(如 PHP 或 Java 等)以及运行 python 脚本时

   It should check the minimum requirements that needs to install that particular software(like PHP or Java that we will pass the this software name along with the script file)?
   Which version of that software is installed ?

我的意思是当我们以特定的软件名称运行脚本时,脚本应该首先找到安装它的要求,其次是否安装了软件,如果安装了该软件的版本是什么?

例如要知道我们将使用的 linux 机器上是否安装了 PHP php -V,还要查找 java 的版本,我们将使用java -version.

所以最后谁能告诉我一个基本概念,我们是否可以从单个 python 脚本中动态找到软件版本以及安装该特定软件所需的要求?

4

1 回答 1

0
from os import system
phpstatus = system('php --version')
javastatus = system('java -version')

if phpstatus != 0:
    print 'Missing: PHP'
if javastatus != 0:
    print 'Missing: Java'

如果两者中的任何一个在返回值中都为BUT 0,则说明您缺少模块。
(这不是最佳选择,您很可能会看到大量不需要的文本,但这是一个开始)

列出所有已安装的软件(buntu/debian):

from subprocess import Popen, PIPE
stdout, stderr = Popen(['dpkg', '--get-selections'], stdout=PIPE, stderr=PIPE).communicate()

然后只需遍历它并找到已安装的内容与您需要的内容。这一切都归结为基础知识,你需要什么,你需要一个你需要在系统中出现的项目列表。没有它,就没有办法自动化缺少的东西,因为你不能开发一些东西(截至今天) 可以了解您的期望、安装的内容以及缺少的内容。

您需要: 您需要安装的项目列表 匹配该项目,安装什么。

于 2013-02-07T10:33:33.110 回答