使用 python,我将如何检查我的服务器上是否安装了 PHP(CentOS 6.4)?大多数谷歌搜索的资源都指向相反的方向,即检查python模块是否安装在PHP中。
有什么方法可以检查是否使用 Python 在服务器上安装了 PHP(无论版本)?
编辑:
我编写了一个 bash 脚本,它简单地调用php -v
并且可以从 python 中调用,但是在 Python 中有没有其他方法可以直接调用?
您可以使用 subprocess 来检查它是否可以执行命令。
import subprocess as sp
def hasPHP():
try:
sp.check_call(['php', '-v'])
return True
except:
return False
然后,您可以致电hasPHP()
获取True
或False
。
注意:虽然通常最好指定错误类型,但可能出现的各种错误(不同的操作系统等)最好将其省略。
关于as
语法:
这一行:
import subprocess as sp
基本上是这样做的(稍微复杂一些):
import subprocess
sp = subprocess
del subprocess
在不太正式的术语中,它为长模块名称提供别名。
怎么样:
from os import system
php = system('php --version')
if php != 0:
print 'Missing: PHP'
如果已安装,您将找到一个 php 二进制文件/usr/bin/php
或/usr/local/bin/php
要检查路径是否为现有文件:
True
如果path是现有的常规文件,则返回。这遵循符号链接,因此对于同一路径,两者islink()
和isfile()
都可以为真。