# redis-cli 使用

URL: https://caijiao.org/redis/02-basics/03-redis-cli
Source: docs/redis/02-basics/03-redis-cli.md
Description: redis-cli 是 Redis 官方提供的命令行客户端工具，支持连接本地和远程服务器，执行各种命令，进行数据操作、管理和调试，是开发和运维的必备利器。

`redis-cli` 是 Redis 官方的命令行客户端工具，用户通过它可以直接与 Redis 服务器交互，执行命令，调试和管理数据。

## 启动 redis-cli

- 连接本地默认 Redis 实例：

  ```bash
  redis-cli
  ````

* 连接指定主机和端口：

  ```bash
  redis-cli -h 127.0.0.1 -p 6379
  ```

* 使用密码连接：

  ```bash
  redis-cli -a yourpassword
  ```

## 常用选项

* `-n` 选择数据库（默认 0）：

  ```bash
  redis-cli -n 1
  ```

* `-r` 重复执行命令指定次数（调试时用）：

  ```bash
  redis
  -cli -r 100 SET key value
  ```
* `--csv` 以 CSV 格式输出结果，便于脚本处理。

## 交互模式

直接运行 `redis-cli` 进入交互模式，可连续输入 Redis 命令：

```bash
127.0.0.1:6379> SET name "ChatGPT"
OK
127.0.0.1:6379> GET name
"ChatGPT"
```

## 管道模式

redis-cli 支持管道操作，可以批量发送命令，减少网络开销：

```bash
redis-cli --pipe < commands.txt
```

其中 `commands.txt` 中包含多条 Redis 命令。

## 监控和调试

* 使用 `MONITOR` 实时监听所有请求：

  ```bash
  redis-cli MONITOR
  ```
  
* 查看服务器信息：

  ```bash
  redis-cli INFO
  ```

## 脚本执行

redis-cli 支持执行 Lua 脚本，示例如下：

```bash
redis-cli EVAL "return redis.call('get', KEYS[1])" 1 mykey
```

`redis-cli` 是连接和操作 Redis 的最直接工具，灵活使用可提高开发和运维效率。
