Skip to content

n8n 的 CLI 命令

n8n 包含 CLI(命令行界面),允许您使用 CLI 而非 n8n 编辑器执行操作。这些操作包括启动工作流以及导出和导入工作流和凭据。

运行 CLI 命令

您可以将 CLI 命令与自托管 n8n 结合使用。根据您选择的 n8n 安装方式,运行命令的方式会有所不同:

  • npm:该命令可直接使用。文档在下面的示例中使用了此功能。
  • Docker:该命令在您的 Docker 容器中可用:

    1
    docker exec -u node -it <n8n-container-name> <n8n-cli-command>
    

启动工作流程

您可以使用 CLI 直接启动工作流程。

通过 ID 执行已保存的工作流:

1
n8n execute --id <ID>

更改工作流的活动状态

您可以使用 CLI 更改工作流的活动状态。

需要重新启动

这些命令作用于你的 n8n 数据库。如果你在 n8n 运行时执行这些命令,更改将不会生效,直到你重新启动 n8n。

根据工作流的 ID 设置其活动状态为 false:

1
n8n update:workflow --id=<ID> --active=false

根据工作流的 ID 设置其活动状态为 true:

1
n8n update:workflow --id=<ID> --active=true

将所有工作流的活动状态设置为 false:

1
n8n update:workflow --all --active=false

将所有工作流的活动状态设置为 true:

1
n8n update:workflow --all --active=true

导出工作流程和凭证

您可以使用 CLI 从 n8n 导出您的工作流和凭据。

命令标志:

旗帜 描述
- 帮助 幫助提示。
- 全部 导出所有工作流程/凭证。
--备份 设置 --all --pretty --separate 选项用于备份。您也可以选择设置 --output 选项。
- ID 要导出的工作流的 ID。
- 输出 如果使用单独的文件,则输出文件名或目录。
- 漂亮的 以更易于阅读的方式格式化输出。
- 分离 每个工作流导出一个文件(用于版本控制)。必须使用 --output 设置目录。
--解密 以纯文本格式导出凭据。

工作流程

将所有工作流程导出到标准输出(终端):

1
n8n export:workflow --all

通过 ID 导出工作流并指定输出文件名:

1
n8n export:workflow --id=<ID> --output=file.json

将所有工作流程导出到单个文件中的特定目录:

1
n8n export:workflow --all --output=backups/latest/file.json

使用标志将所有工作流程导出到特定目录(详情见上文):

1
n8n export:workflow --backup --output=backups/latest/

证书

将所有凭证导出到标准输出(终端):

1
n8n export:credentials --all

根据 ID 导出凭证并指定输出文件名:

1
n8n export:credentials --id=<ID> --output=file.json

将所有凭证导出到单个文件中的特定目录:

1
n8n export:credentials --all --output=backups/latest/file.json

使用标志将所有凭据导出到特定目录(详情见上文):

1
n8n export:credentials --backup --output=backups/latest/

以纯文本格式导出所有凭据。您可以使用此功能从一个安装迁移到另一个在配置文件中具有不同密钥的安装。

敏感信息

所有敏感信息在文件中都是可见的。

1
n8n export:credentials --all --decrypted --output=backups/decrypted.json

导入工作流程和凭证

您可以使用 CLI 从 n8n 导入您的工作流和凭据。

更新 ID

导出工作流程和凭证时,n8n 也会导出其 ID。如果您现有数据库中存在具有相同 ID 的工作流程和凭证,它们将被覆盖。为避免这种情况,请在导入之前删除或更改 ID。

可用标志:

旗帜 描述
- 帮助 幫助提示。
- 输入 如果使用--separate,请输入文件名或目录。
--项目ID 将工作流或凭证导入指定项目。不能与 一起使用。
- 分离 从 --input 提供的目录导入文件。
- 用户身份 将工作流或凭据导入到指定用户。不能与 一起使用。

迁移到 SQLite

n8n 将工作流和凭证名称限制为 128 个字符,但 SQLite 不强制执行大小限制。

这可能会导致导入过程中出现诸如列名数据太长之类的错误。

在这种情况下,您可以从 n8n 界面编辑名称并再次导出,或者在导入之前直接编辑 JSON 文件。

工作流程

从特定文件导入工作流程:

1
n8n import:workflow --input=file.json

从指定目录将所有工作流文件作为 JSON 导入:

1
n8n import:workflow --separate --input=backups/latest/

证书

从特定文件导入凭证:

1
n8n import:credentials --input=file.json

从指定目录以 JSON 格式导入所有凭证文件:

1
n8n import:credentials --separate --input=backups/latest/

执照

清除

从 n8n 的数据库中清除您现有的许可证并将 n8n 重置为默认功能:

1
n8n license:clear

如果您的许可证包括浮动权利,运行此命令还将尝试将它们释放回池中,以使它们可用于其他实例。

信息

显示现有许可证的信息:

1
n8n license:info

用户管理

您可以使用 n8n CLI 重置用户管理。这将使用户管理恢复到设置前的状态。此操作将删除所有用户帐户。

如果您忘记了密码,并且没有设置 SMTP 来通过电子邮件重置密码,请使用此功能。

1
n8n user-management:reset

为用户禁用 MFA

如果用户丢失了恢复代码,您可以使用此命令为用户禁用 MFA。之后,用户将能够重新登录并重新设置 MFA。

1
n8n mfa:disable --email=johndoe@example.com

禁用 LDAP

您可以使用以下命令重置 LDAP 设置。

1
n8n ldap:reset

卸载社区节点和凭证

您可以使用 n8n CLI 管理社区节点。目前,您只能卸载社区节点和凭据,如果社区节点导致不稳定,此功能将非常有用。

命令标志:

旗帜 描述
- 帮助 显示 CLI 帮助。
- 凭据 凭证类型。通过访问节点的文件并获取 的值来获取此值。
- 包裹 社区节点的包名称。
--卸载 卸载节点。
- 用户身份 拥有凭证的用户 ID。在自托管服务器上,查询数据库。在云端服务器上,使用您的 API 密钥查询 API。

节点

按包名称卸载社区节点:

1
n8n community-node --uninstall --package <COMMUNITY_NODE_NAME>

例如,要卸载Evolution API 社区节点,请键入:

1
n8n community-node --uninstall --package n8n-nodes-evolution-api

证书

卸载社区节点凭证:

1
n8n community-node --uninstall --credential <CREDENTIAL_TYPE> --userId <ID>

例如,要卸载Evolution API 社区节点凭据,请访问存储库并导航到文件以查找:

1
n8n community-node --uninstall --credential evolutionApi --userId 1234

安全审计

您可以在 n8n 实例上运行安全审核,以检测常见的安全问题。

1
n8n audit