在日常的工作流自动化中,我们经常需要快速地启动工作流、导出备份或批量管理配置。虽然 n8n 编辑器提供了友好的图形界面,但 n8n 命令行界面(CLI) 提供了更强大、更灵活的管理方式。无论你是想通过命令行执行工作流,还是需要进行批量导出导入操作,n8n CLI 都能帮助你事半功倍。
本教程将带你快速上手 n8n CLI,从基础概念到实战操作,让你成为命令行工作流管理的高手。
CLI 的核心价值
n8n CLI 是一个强大的命令行工具,允许你:
- 启动和管理工作流 无需打开 Web 界面
- 批量导出导入 工作流和凭据,方便备份和迁移
- 自动化管理 用户、许可证和系统设置
- 集成到脚本 中,实现更复杂的自动化流程

支持的环境
n8n CLI 可在以下两种环境中使用:
1. npm 安装
如果你通过 npm 安装了 n8n,命令可直接使用:
2. Docker 容器
如果你使用 Docker 运行 n8n,需要这样执行命令:
例如:
1. 工作流执行命令
启动单个工作流
执行保存的工作流,通过其 ID 指定:
实例:
应用场景:
- 定时执行脚本中的工作流
- 集成到 CI/CD 流程中
- 在服务器启动时自动运行特定工作流
2. 工作流状态管理
激活工作流
停用工作流
批量管理工作流状态
停用所有工作流:
激活所有工作流:
重要提示:这些命令需要重启 n8n 才能生效!
应用场景:
- 系统维护期间停用所有工作流
- 批量部署新版本工作流前的准备
- 故障排查时快速关闭自动化流程
3. 工作流导出命令
导出所有工作流
输出到标准输出(终端显示)。
导出特定工作流
导出所有工作流到特定目录
使用备份标志导出(推荐用于备份)
此命令会:
- 自动启用
- 每个工作流保存为单独文件
- 易于版本控制和对比
命令标志说明:
4. 凭据导出命令
导出所有凭据
导出特定凭据
导出为纯文本格式(用于迁移)
⚠️ 安全警告:导出的纯文本文件包含敏感信息,请妥善保管!
5. 工作流和凭据导入命令
导入单个工作流
导入多个工作流(从目录)
导入凭据
导入到特定项目
重要说明:
- 导出时 n8n 会记录工作流和凭据的 ID
- 如果导入同 ID 的对象,会覆盖现有的
- 为了避免覆盖,可在导入前删除或修改 JSON 中的 ID
6. 实体导出(完整数据库备份)
导出整个数据库的所有实体(包括工作流历史):
包含执行历史的大型备份:
然后可以导入到其他数据库:
应用场景:
- SQLite 迁移到 PostgreSQL
- 完整的系统备份和恢复
- 多个 n8n 实例之间的数据迁移
7. 用户管理命令
重置用户管理系统
此命令会移除所有用户账户,恢复到初始状态。
应用场景:
- 忘记管理员密码且未设置邮件恢复
- 清除所有用户进行全新部署
禁用用户的 MFA(多因素认证)
用户可重新登录后重新设置 MFA。
重置 LDAP 设置
8. 许可证管理命令
清除许可证
重置 n8n 为默认功能。
查看许可证信息
显示当前许可证状态和信息。
9. 安全审计命令
检测 n8n 实例中的常见安全问题:
此命令会扫描并报告:
- 不安全的配置
- 潜在的漏洞
- 建议的安全改进
现在让我们通过一个完整的案例,学习如何使用 CLI 命令构建一个自动备份系统。
场景
你需要:
- 定期备份所有工作流
- 备份所有凭据
- 能够快速恢复

实现步骤
第一步:创建备份脚本
创建一个 文件:
第二步:设置定时备份
使用 设置每天凌晨 2 点执行备份:
添加以下行:
第三步:恢复备份
当需要恢复时,执行:
下面是一个完整的可执行工作流示例,结合 CLI 命令的实际应用。这个工作流会:
- 按计划运行
- 执行一个主要的数据处理工作流
- 导出执行结果
- 发送通知
完整工作流 JSON
如何使用此工作流
- 在 n8n 中导入:
- 打开 n8n 编辑器
- 点击右上角 →
- 选择包含上述 JSON 的文件
n8n 工作流 教程
- 配置参数:
- 将 替换为实际的工作流 ID
- 将 替换为你的 Webhook 地址
- 激活工作流:
- 点击右上角的 按钮
- 工作流现在会每天自动执行
- 监控执行:
- 在工作流列表中查看执行记录
- 通过 Webhook 接收执行通知
Q1:导出的凭据包含敏感信息吗?
A:默认情况下,凭据被加密。只有添加 标志时才会以纯文本形式导出。纯文本导出应谨慎处理!
Q2:如果 ID 重复,导入会发生什么?
A:如果导入的工作流或凭据 ID 与现有的相同,新导入的会覆盖现有的。为避免这种情况,可在 JSON 文件中删除或修改 ID。
Q3:导出和导入支持不同的数据库类型吗?
A:是的!使用 和 命令,你可以在 SQLite、PostgreSQL 等不同数据库类型之间迁移。
Q4:如何在 Docker 中执行 CLI 命令?
A:使用 。例如:
Q5:能否通过 CLI 创建新的工作流?
A:CLI 主要用于管理和执行现有工作流。新工作流建议通过 Web 编辑器或工作流模板导入。
1. 定期备份
2. 版本控制
使用 标志将每个工作流保存为单独文件,便于 Git 版本控制:
3. 安全管理
- 定期运行安全审计
- 不要在公共环境中暴露凭据
- 使用加密的备份存储
4. 监控和告警
使用 CLI 在脚本中集成监控:
通过 n8n CLI,你可以:
✅ 快速执行 工作流而无需打开编辑器
✅ 批量管理 工作流和凭据
✅ 自动化备份 关键数据
✅ 与脚本集成 实现更复杂的自动化
✅ 简化运维 工作流
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/247497.html原文链接:https://javaforall.net
