OpenClaw /exec 命令使用指南¶
创建时间:2026-03-15
用途:快速掌握 OpenClaw 中执行 shell 命令的两种方式
📋 概述¶
OpenClaw 提供两种使用 exec 的方式:
- Slash Command(用户直接使用) -
/exec <shell 命令> - AI 调用 exec 工具 - AI 在后台帮你执行
🔹 方式 1:Slash Command(推荐)¶
这是**你在聊天中直接输入**的命令,格式为 /exec <shell 命令>
基本用法¶
带参数的用法¶
完整参数列表¶
| 参数 | 简写 | 说明 |
|---|---|---|
--workdir=<path> | -w | 工作目录 |
--env.<KEY>=<value> | -e | 环境变量 |
--timeout=<seconds> | -t | 超时秒数 |
--background | -b | 后台运行 |
--pty | 伪终端模式 | |
--yield-ms=<ms> | 延迟后台毫秒数 |
📚 实际项目示例¶
示例 1:Git 操作¶
示例 2:项目管理¶
示例 3:系统监控¶
示例 4:文件操作¶
示例 5:Docker 操作¶
🔹 方式 2:AI 调用 exec 工具¶
这是**AI 在后台调用**的 exec 工具,用于帮你执行复杂任务。
使用场景¶
当你说: - "帮我把项目构建一下" - "查看当前目录的文件" - "运行测试并告诉我结果"
AI 会自动调用 exec 工具执行命令,然后处理后给你总结。
示例¶
📊 两种方式对比¶
| 特性 | Slash Command (/exec) | AI 调用 (exec 工具) |
|---|---|---|
| 使用者 | 你(用户) | 我(AI) |
| 格式 | /exec <命令> [参数] | 自动调用 |
| 参数 | 命令行参数 | JavaScript 对象 |
| 输出 | 直接显示在聊天 | AI 处理后告诉你 |
| 适用场景 | 快速执行简单命令 | 复杂任务、多步骤 |
💡 推荐用法¶
你直接使用 /exec(快速、直接)¶
让 AI 调用 exec(复杂任务)¶
⚠️ 注意事项¶
安全限制¶
输出限制¶
- 命令输出默认限制 50KB 或 2000 行
- 超长输出会被截断
- 使用
head/tail限制输出:
超时设置¶
🔍 调试技巧¶
1. 查看命令执行日志¶
2. 处理失败¶
3. 分步执行复杂命令¶
📋 参数速查表¶
| 参数 | 类型 | 说明 | 示例 |
|---|---|---|---|
command | string | 必填 - Shell 命令 | "ls -la" |
workdir | string | 工作目录 | "/home/admin/workspace" |
env | object | 环境变量 | {NODE_ENV: "prod"} |
timeout | number | 超时秒数 | 60 |
yieldMs | number | 延迟后台毫秒 | 10000 |
background | boolean | 立即后台 | true |
pty | boolean | 伪终端模式 | true |
elevated | boolean | 提升权限 | true |
🎯 最佳实践¶
- 短命令直接执行 - 5 秒内完成的命令
- 长命令设置超时 - 避免无限等待
- 后台任务用 background - 服务器、监控等
- 敏感操作先确认 - 删除、覆盖等
- 使用 workdir 而非 cd - 更清晰
- 环境变量显式声明 - 避免依赖系统环境
📞 常见问题¶
Q: 命令执行超时怎么办?¶
A: 使用 --timeout 参数增加超时时间,如 --timeout=300(5 分钟)
Q: 如何查看后台进程?¶
A: 使用 process list 命令查看所有后台进程
Q: 如何终止后台进程?¶
A: 使用 process kill <sessionId> 终止指定进程
Q: 命令输出太长被截断了?¶
A: 使用 head/tail 限制输出,或重定向到文件后查看
最后更新: 2026-03-15
维护: OpenClaw 自动化系统