使用python,如何检查我的服务器上是否安装了PHP(CentOS 6.4)?大多数谷歌搜索的资源指向相反的方向,即检查python模块是否安装在PHP中。
是否有任何方法可以使用Python检查服务器上是否安装了PHP(任何版本)?
编辑:我已经编写了一个bash脚本,它只调用php -v
,并且可以从python中调用,但在python中有其他直接方法吗?
您可以使用子流程检查它是否可以执行命令。
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
要检查路径是否为现有文件:
os.path.isfile(path)
如果路径已存在,则返回
True
常规文件。这遵循符号链接,因此islink()
和isfile()
可以为真路径