检查Redis的版本

时间:2018-08-16 07:37:59

标签: python redis

我想检查redis的版本,
可以在命令行上完成

In [181]: !redis-server --version
Redis server v=4.0.10 sha=00000000:0 malloc=libc bits=64 build=ea14acb2d1b3b56f

但是,当它返回redis-py的版本而不是redis版本时

In [184]: redis.__version__
Out[184]: '2.10.6

可以用怪异的方式实现

In [186]: subprocess.run("redis-server --version", shell=True)
Redis server v=4.0.10 sha=00000000:0 malloc=libc bits=64 build=ea14acb2d1b3b56f
Out[186]: CompletedProcess(args='redis-server --version', returncode=0)

如何直接用纯代码检查redis的版本?

2 个答案:

答案 0 :(得分:5)

Redis使用INFO命令来获取有关服务器的所有信息:

import redis

r = redis.StrictRedis(host='localhost', port=6379, db=0)
print(r.execute_command('INFO')['redis_version'])

答案 1 :(得分:0)

在cli中,您可以使用以下命令

redis-cli info

样本输出

# Server
redis_version:4.0.1
redis_git_sha1:00000000
redis_git_dirty:0
redis_build_id:f37081b32886670b
redis_mode:standalone
os:Darwin 16.7.0 x86_64
arch_bits:64
multiplexing_api:kqueue
atomicvar_api:atomic-builtin
gcc_version:4.2.1

或者如果您需要版本,可以尝试使用管道cmd

redis-cli info | grep "redis_version"

输出

redis_version:4.0.1

我希望这会有所帮助