安装与命令行
MushScript 程序由 mush 命令行工具编译并运行,确认它在 PATH 里即可开始。
确认可用
$ mush --version
mush 0.5.2命令能打印版本号,环境就是可用的。获取方式与版本随发布渠道说明,不在本手册范围内。
命令总表
| 命令 | 作用 |
|---|---|
mush | 交互式 REPL |
mush <file.ms> | 运行脚本(等价于 mush run <file.ms>) |
mush run [file.ms] | 编译并运行,省略文件时运行 package.msd 声明的 entry |
mush - | 从 stdin 读脚本运行 |
mush -e "<code>" | 一次性求值,表达式结果回显 |
mush check [path...] | 只编译报诊断,不执行 |
mush fmt [path...] [--check] | 排版;--check 只报差异不改文件 |
mush test [paths...] | 运行 .ms 测试 |
mush --version / --help | 版本与帮助 |
run 与 check 的目标解析
run 与 check 的目标按三种形态解析:
- 省略目标:从当前目录向上发现
package.msd,找不到就把当前目录当包根,收集全部.ms。 .ms文件:编译该文件所属的包。- 目录:把该目录当包根收集。
check 成功时打印一行摘要:摘要里的名字是包名,单文件场景取文件名,后面是检查的源文件数。有警告时这一行变为「N 个警告」,警告全文打印在摘要上方。
$ mush check helloworld.ms
已检查 helloworld(1 个源文件):无错误
$ mush run helloworld.ms
Hello, world改代码排查问题时可选用 check,确认逻辑时用 run。
退出码
| 码 | 含义 |
|---|---|
| 0 | 成功 |
| 1 | 编译或运行失败 |
| 2 | 用法错误 |
| 130 | Ctrl+C 中断 |
注意
- 编译不通过的程序不会执行,运行输出永远来自一个通过了完整编译的程序。
.ms文件须为 UTF-8 编码。- 命令行示例里
$是 shell 提示符,不是输入的一部分。 - 脚本实参的完整规则(含
--分隔)见 main 与退出码一页。
最后更新于 2026年10月7日
