> ## Documentation Index
> Fetch the complete documentation index at: https://fluxon.tabooproject.org/llms.txt
> Use this file to discover all available pages before exploring further.

# 命令行与 REPL

> 介绍 fluxon CLI、脚本执行与交互式体验

Fluxon 提供一个交互式控制台（REPL）。它适合用来试验语法、验证表达式结果与快速排错。入口类是
`org.tabooproject.fluxon.FluxonConsole`。

## 启动控制台

最简单的启动方式（使用 Gradle 的 `run` 任务）：

```bash theme={null}
./gradlew :core-console:run
```

如需 `installDist` 生成可分发脚本、查看完整内置命令表或导出函数目录，请参阅 [CLI 参考](/appendix/cli-reference)。
启动后会出现 `fluxon> ` 提示符；控制台会在用户家目录创建 `.fluxon_history` 保存历史记录。

## 输入第一段脚本

* 普通语句直接回车即可执行：

```fluxon theme={null}
fluxon> print("Hello Fluxon")
Hello Fluxon
```

* 如果表达式有返回值，控制台会额外打印结果，并将其保存到特殊变量 `_`。
* 返回 `null` 时不会覆盖旧值。

```fluxon theme={null}
fluxon> 1 + 2
> 3
fluxon> &_ * 10
> 30
```

<Note>REPL 内部通过 JSR223 `ScriptEngine` 执行脚本，会在同一会话中复用上下文（变量会保留）。</Note>

## 常用命令（速记）

* `:help`：查看内置命令速览。
* `:vars`：查看当前变量（含 `_`）。
* `:list`：按行号列出本次会话输入的语句。

命令实现为**精确匹配**（区分大小写），并且需要带上前缀 `:`；完整列表见 [CLI 参考](/appendix/cli-reference)。

## 查看变量

执行几条语句再输入 `:vars`：

```fluxon theme={null}
fluxon> username = "fluxon"
fluxon> :vars
Current variables:
[ENGINE_SCOPE]:
  username         = fluxon
  _                = fluxon
[GLOBAL_SCOPE]:
```

这能帮助你快速确认哪些变量已经定义，或 `_` 是否保存了想要的返回值。

## 调试模式（可选）

如果在排查语法/解析问题，可以在代码前加 `$`：

```fluxon theme={null}
fluxon> $if &n <= 1 then 1 else factorial(&n - 1)
```

控制台会输出解析结构与伪代码树，便于定位括号、`then/else`、代码块边界等问题。

## 相关链接

* [CLI 参考](/appendix/cli-reference)
* [JSR223 脚本引擎](/runtime/jsr223)
* [故障排查](/developer/troubleshooting)
