*Redis COMMAND 命令
COMMAND 返回 Redis 服务器中所有可用命令的详细信息数组。
*语法
COMMAND
*参数说明
该命令无额外参数。
*返回值
返回一个数组,每个元素描述一个命令的完整信息(名称、参数数量、标志位、ACL 分类、提示信息等)。
*时间复杂度
O(N),N 为命令总数。
*示例
*查看所有命令详情
> COMMAND
1) 1) "get"
2) (integer) 2
3) 1) "readonly"
...
*配合 RESP3 使用
> COMMAND
1) {"name":"get","arity":-2,...}
...
*常见错误
| 错误 | 原因 | 解决 |
|---|---|---|
| ERR wrong number of arguments | 传入了额外参数 | COMMAND 不接受任何参数 |
*最佳实践
- 用于客户端自动生成命令帮助或 IDE 补全。
- 调用较频繁时建议本地缓存结果,命令列表不会频繁变化。
- 配合 COMMAND DOCS 获取更详细的文档信息。
*FAQ
COMMAND 和 COMMAND LIST 有什么区别? COMMAND 返回每个命令的完整元数据数组;COMMAND LIST 仅返回命令名称列表。
返回的数据量有多大? Redis 7.x 约有 200+ 命令,返回数据量约几十 KB。
RESP2 和 RESP3 返回值格式一样吗? 不一样,RESP3 返回结构化映射(map),RESP2 返回嵌套数组。