本文档列出了 ZerOS 终端支持的所有内置命令及其用法。
终端按以下优先级查找和执行命令:
ls, cd, clear 等)D:/bin/<命令名>.js 文件,如果存在则作为程序执行ApplicationAssetManager 查找已注册的程序ls [-l] [path]列出目录项。
参数:
-l (可选): 输出长格式(详细信息)path (可选): 目录路径,支持相对或绝对路径(如 C:/dir)示例:
ls # 列出当前目录
ls -l # 列出当前目录(长格式)
ls C:/Users # 列出指定目录
ls -l D:/project # 列出指定目录(长格式)
cd <dir>切换目录。
参数:
dir (必需): 目标目录路径,支持相对路径(如 .. 返回上级)和绝对路径示例:
cd C:/Users # 切换到 C:/Users
cd .. # 返回上级目录
cd D:/project/myapp # 切换到指定目录
pwd显示当前工作目录。
示例:
pwd
# 输出: C:/Users/Alice
tree [-L depth] [path]以树状结构显示目录。
参数:
-L depth (可选): 限制显示深度path (可选): 目录路径,支持相对或绝对路径示例:
tree # 显示当前目录树
tree -L 2 # 显示当前目录树(深度限制为2)
tree C:/Users # 显示指定目录树
markdir <path>创建目录。
参数:
path (必需): 目录路径,支持多级路径(如 foo/bar)示例:
markdir newdir # 创建目录
markdir foo/bar/baz # 创建多级目录
markfile <path>创建空文件。
参数:
path (必需): 文件路径示例:
markfile test.txt # 创建空文件
cat [-md] <file>显示文件内容。
参数:
-md (可选): 渲染 Markdown 格式file (必需): 文件路径,支持相对或绝对路径示例:
cat file.txt # 显示文件内容
cat -md README.md # 渲染 Markdown 文件
write [-a] <file> <txt>写入文件。
参数:
-a (可选): 追加模式(默认覆盖)file (必需): 文件路径txt (必需): 要写入的文本示例:
write file.txt "Hello World" # 覆盖写入
write -a file.txt "New line" # 追加写入
rm <file|dir>删除文件或目录。
参数:
file|dir (必需): 文件或目录路径示例:
rm file.txt # 删除文件
rm olddir # 删除目录
rename <old> <new>重命名文件或目录。
参数:
old (必需): 原名称new (必需): 新名称示例:
rename old.txt new.txt
mv <src> <dest>移动文件或目录到目标位置。
参数:
src (必需): 源路径dest (必需): 目标路径示例:
mv file.txt C:/Users
copy <file|dir>复制文件或目录到剪贴板。
参数:
file|dir (必需): 文件或目录路径示例:
copy file.txt # 复制文件到剪贴板
paste从剪贴板粘贴文件或目录到当前目录。
示例:
paste # 粘贴剪贴板内容
ps [-l|--long] [pid]显示程序内存信息。
参数:
-l 或 --long (可选): 显示详细信息pid (可选): 指定进程 ID,查看特定程序示例:
ps # 显示所有程序
ps -l # 显示详细信息
ps 12345 # 显示指定进程
kill [signal] <pid>终止指定程序并释放其内存。
参数:
signal (可选): 信号参数(如 -9)pid (必需): 进程 ID示例:
kill 12345 # 终止进程
kill -9 12345 # 强制终止进程
netport <命令> [选项]TCP 端口管理工具。
命令:
register, reg, r <端口> [程序名]: 注册端口监听unregister, unreg, u <端口>: 取消端口监听status, stat, s <端口>: 查看端口状态list, ls, l: 列出所有已注册的端口send <主机> <端口> <数据>: 向端口发送数据选项:
-h, --help: 显示帮助信息示例:
netport register 8080 MyServer # 注册端口 8080
netport unregister 8080 # 取消端口 8080
netport status 8080 # 查看端口 8080 状态
netport list # 列出所有端口
netport send 127.0.0.1 8080 "Hello" # 向端口发送数据
netport --help # 显示帮助
注意:
NETWORK_ACCESS 权限(普通权限,自动授予)clear清除屏幕。
示例:
clear
echo [-n] [text...]输出文本。
参数:
-n (可选): 不换行输出到同一行text... (可选): 要输出的文本示例:
echo "Hello World" # 输出文本并换行
echo -n "Hello" # 输出文本不换行
whoami显示当前用户。
示例:
whoami
# 输出: alice
check全面自检内核并给出详细的检查报告。
示例:
check
diskmanger [-l] [disk]显示磁盘分区信息。
说明:命令名为 diskmanger(历史拼写),请按文档使用该名称。
参数:
-l (可选): 显示详细文件和目录占用disk (可选): 指定磁盘(如 C: 或 D:)示例:
diskmanger # 显示所有磁盘信息
diskmanger -l # 显示详细信息
diskmanger -l C: # 显示指定磁盘详细信息
power <action>系统电源管理。
参数:
action (必需): 操作类型
reboot 或 restart: 重启系统(重新加载页面)shutdown 或 off: 关闭系统help: 显示帮助信息示例:
power reboot # 重启系统
power shutdown # 关闭系统
power help # 显示帮助
debug <action> [args...] {#debug-action-args}调试工具,支持异常测试、地理位置、天气、翻译服务与 D/server 服务列表等。
权限要求: ⚠️ 需要管理员权限
参数:
action (必需): 操作类型
exception <level> [message]: 触发指定等级的异常
level (必需): 异常等级
kernel: 内核异常(将进入BIOS安全模式)system: 系统异常(将显示蓝屏并重启)program: 程序异常(将终止当前程序)service: 服务异常(仅记录日志)message (可选): 异常消息,默认为测试消息geography [--clear] [--high]: 地理位置调试(--clear 清除缓存后重新获取,--high 启用高精度定位)weather [--city 城市] [--raw]: 天气调试(--city 指定城市,否则用定位;--raw 输出原始 JSON)translate [--status]: 翻译服务调试,显示 POOL > SERVER Translate 状态与统计translate --simple "文本" <to_lang>: 测试普通机器翻译(需翻译服务已启动)services [--status [id]]: D/server 服务列表;--status 显示各服务状态,可指定 id 查看单服务(如 translate)示例:
debug # 显示帮助信息(列出所有 action)
debug exception service "测试服务异常" # 触发服务异常(仅记录日志)
debug exception program # 触发程序异常(终止当前程序)
debug exception system "系统资源耗尽" # 触发系统异常(蓝屏并重启)
debug exception kernel "内核模块错误" # 触发内核异常(进入BIOS安全模式)
debug geography # 地理位置调试
debug geography --clear --high # 清除缓存并高精度定位
debug weather # 天气调试(使用定位城市)
debug weather --city 兴县 --raw # 指定城市并输出原始 JSON
debug translate --status # 翻译服务状态与统计
debug translate --simple "明天" en # 测试普通机器翻译
debug services # 列出已加载的 D/server 服务
debug services --status # 列出服务并显示各服务状态
debug services --status translate # 仅显示 translate 服务状态
警告:
注意: exception 主要用于测试异常处理机制,请谨慎使用。翻译服务详见 翻译服务 (ServerTranslate)。
exit关闭当前终端程序进程。
示例:
exit
login <username>切换用户登录。
参数:
username (必需): 用户名示例:
login alice # 切换到 alice 用户
su <username>切换用户(与 login 相同)。
参数:
username (必需): 用户名示例:
su admin # 切换到 admin 用户
users列出所有用户及其级别。
示例:
users
# 输出:
# 用户列表:
# admin - 默认管理员 (当前)
# alice - 用户
groups列出所有用户组。
示例:
groups
groupadd <name> [type] [desc]创建用户组(需要管理员权限)。
参数:
name (必需): 组名type (可选): 类型(USER_GROUP 或 ADMIN_GROUP,默认为 USER_GROUP)desc (可选): 组描述示例:
groupadd developers # 创建用户组
groupadd admins ADMIN_GROUP # 创建管理员组(需要默认管理员权限)
groupadd test "Test Group" # 创建带描述的用户组
groupdel <name>删除用户组(需要默认管理员权限)。
参数:
name (必需): 组名示例:
groupdel test # 删除用户组
groupmod <name> <op>修改用户组(需要管理员权限)。
参数:
name (必需): 组名op (必需): 操作类型
-a <username>: 添加成员-d <username>: 删除成员-m <description>: 修改描述示例:
groupmod developers -a alice # 添加成员
groupmod developers -d bob # 删除成员
groupmod developers -m "Dev Team" # 修改描述
groupinfo <name>显示用户组详细信息。
参数:
name (必需): 组名示例:
groupinfo developers
env列出所有环境变量。
示例:
env
# 输出:
# 环境变量列表:
# PATH=C:/bin
# HOME=C:/Users/alice
setenv <name> <value>设置环境变量。
参数:
name (必需): 环境变量名value (必需): 环境变量值(支持包含空格的值)示例:
setenv PATH "C:/bin;C:/tools" # 设置环境变量
setenv MYAPP_HOME "C:/myapp" # 设置环境变量
注意: 普通用户只能读取环境变量,只有管理员可以设置、修改和删除环境变量。
export <name>=<value>设置环境变量(与 setenv 相同,支持两种格式)。
参数:
name=value (格式1): 使用等号分隔name 和 value (格式2): 分别作为两个参数示例:
export PATH="C:/bin" # 格式1: 使用等号
export MYAPP_HOME "C:/myapp" # 格式2: 分别指定
注意: 普通用户只能读取环境变量,只有管理员可以设置、修改和删除环境变量。
unsetenv <name>删除环境变量。
参数:
name (必需): 环境变量名示例:
unsetenv MYAPP_HOME # 删除环境变量
注意: 只有管理员可以删除环境变量。
unset <name>删除环境变量(与 unsetenv 相同)。
参数:
name (必需): 环境变量名示例:
unset PATH # 删除环境变量
注意: 只有管理员可以删除环境变量。
getenv <name>获取环境变量值。
参数:
name (必需): 环境变量名示例:
getenv PATH
# 输出: PATH=C:/bin
vim [file]Vim 文本编辑器(支持 Normal/Insert/Command 模式,支持鼠标滚轮滚动)。
参数:
file (可选): 要编辑的文件路径示例:
vim # 启动 Vim 编辑器
vim file.txt # 编辑指定文件
help显示所有支持的命令及其用法。
示例:
help
demo演示脚本。
示例:
demo
toggleview切换视图。
示例:
toggleview
终端支持 Tab 键自动补全:
Tab 键Tab 或 Shift+Tab 在候选之间循环Enter 选择当前候选支持自动补全的内容:
环境变量可以设置为程序名或文件路径,用于创建命令别名:
示例:
# 设置环境变量为程序名
export es escalate
es # 执行 escalate 程序
# 设置环境变量为文件路径
export myapp "D:/application/myapp/myapp.js"
myapp # 执行指定路径的程序
注意:
/ 或 \,或以 .js 结尾),终端会读取文件内容并作为程序执行__init__ 和 __info__ 方法)可以将 .js 文件放在 D:/bin/ 目录下,文件名即为命令名:
示例:
# 如果存在 D:/bin/mycommand.js
mycommand # 会自动执行 D:/bin/mycommand.js
注意:
__init__ 和 __info__ 方法)