跳到主要内容

导入导出

XTerminal 支持批量导入和导出连接配置,方便数据迁移、备份和团队共享。

导入连接

导入功能允许你从文本或 JSON 格式批量添加连接配置。

打开导入窗口

  1. 切换到本地仓库(导入仅支持本地仓库)
  2. 点击工具栏的 导入 按钮
  3. 在弹出的对话框中输入或粘贴数据

导入对话框

导入模式

导入窗口顶部可以切换两种模式:

模式说明
文本每行一条记录,支持竖线分隔或键值对格式
JSON标准 JSON 数组格式,适合程序生成的数据

文本格式

文本模式每行表示一条连接,支持两种语法:

竖线分隔格式

host[:port] | user | pass | title | note

示例:

192.168.1.10 | root | 123456 | Dev Server | 开发机
user@10.0.0.3:2222 | | | 测试机 | 临时
  • 各字段用竖线 | 分隔
  • 字段可以为空(保留空格)
  • 端口可以写在地址后面用冒号分隔

键值对格式

host=值 user=值 port=值 auth=值 title=值 ...

示例:

host=10.0.0.5 user=root auth=privateKey privateKey="/Users/me/.ssh/id_rsa" title=KeyLogin

支持的键:

键名说明示例
host主机地址192.168.1.10
port端口号22
user / username用户名root
pass / password密码123456
title连接名称MyServer
note备注生产服务器
auth认证方式password / privateKey
privateKey私钥路径/Users/me/.ssh/id_rsa
identityId凭证 IDxxx

注释

#// 开头的行会被忽略:

# 这是注释
// 这也是注释
192.168.1.10 | root | 123456 | Server1

JSON 格式

JSON 模式接受标准的 JSON 数组:

[
{
"host": "192.168.1.10",
"title": "Dev Server",
"username": "root",
"port": 22,
"note": "开发环境"
},
{
"host": "192.168.1.20",
"title": "Prod Server",
"username": "ubuntu",
"port": 2222
}
]

JSON 字段完整说明

字段名类型必填说明示例值
hoststring服务器地址(IP 或域名)"192.168.1.10"
portnumberSSH 端口,默认 2222
username / userstring登录用户名"root"
password / passstring登录密码(明文)"123456"
titlestring连接显示名称"生产服务器"
notestring备注信息"数据库主节点"
authstring认证方式"password" / "privateKey"
privateKeystring私钥文件路径"/Users/me/.ssh/id_rsa"
passphrasestring私钥密码"keypass"
identityIdstring凭证 ID(已保存的凭证)"abc123"
timeoutnumber连接超时(毫秒)30000
keepaliveIntervalnumber心跳间隔(毫秒)5000
defaultPathstring默认工作目录"/var/www"
initScriptstring初始化脚本"source ~/.profile"

认证方式(auth)取值

说明
password密码认证(默认)
privateKey私钥认证,需配合 privateKey 字段
identity使用已保存的凭证,需配合 identityId 字段
keyboard交互式认证(2FA)
askEveryTime每次连接时询问

完整示例

[
{
"host": "192.168.1.10",
"port": 22,
"username": "root",
"password": "123456",
"title": "开发服务器",
"note": "前端项目",
"auth": "password",
"defaultPath": "/var/www/frontend",
"timeout": 30000
},
{
"host": "10.0.0.50",
"port": 2222,
"username": "deploy",
"title": "生产服务器",
"auth": "privateKey",
"privateKey": "/Users/me/.ssh/prod_key",
"passphrase": "keypassword",
"initScript": "cd /app && source .env"
},
{
"host": "db.example.com",
"username": "admin",
"title": "数据库服务器",
"auth": "keyboard",
"note": "需要 Google Authenticator"
}
]
安全提示

JSON 中的密码和私钥密码为明文存储,请注意:

  • 不要将包含敏感信息的 JSON 文件上传到公开代码仓库
  • 传输时使用加密渠道
  • 导入完成后删除源文件

目标分组

导入窗口会显示当前分组。导入的连接会添加到当前选中的分组中:

  • 如果选中 全部,连接会添加为未分组状态
  • 如果选中特定分组,连接会添加到该分组

执行导入

  1. 输入或粘贴数据
  2. 确认目标分组
  3. 点击 确认导入 按钮
  4. 系统会解析数据并显示导入结果

导入完成后会提示成功导入的条数。如果部分数据解析失败,会显示跳过的条数。

导出连接

导出功能将选中的连接配置复制到剪贴板。

导出步骤

  1. 在连接列表中勾选要导出的连接
  2. 点击工具栏的 复制到剪贴板 按钮
  3. 连接配置会复制到系统剪贴板
  4. 粘贴到文本编辑器保存为文件

导出内容

导出内容为 JSON 格式,包含连接的基本配置信息。

安全说明

  • 导出内容不包含密码和私钥等敏感信息
  • 仅导出主机地址、端口、用户名、名称、备注等基础字段
  • 需要重新配置认证信息后才能使用

导出示例

[
{
"host": "192.168.1.10",
"port": 22,
"username": "root",
"title": "Dev Server",
"note": "开发环境"
}
]

批量操作

复制副本

在当前仓库中创建选中连接的副本:

  1. 勾选要复制的连接
  2. 点击 复制副本 按钮
  3. 副本会添加到同一分组,名称后缀 "- 副本"

复制到云端

将本地仓库的连接复制到云端仓库:

  1. 确保当前在本地仓库
  2. 勾选要复制的连接
  3. 点击 复制到云端 按钮
  4. 系统会在云端创建相同的分组结构并复制连接

注意:需要先登录 XTerminal 账号才能使用此功能。

注意事项

仅本地仓库支持导入

导入功能仅在本地仓库模式下可用。如果你使用云端仓库,需要:

  1. 先切换到本地仓库
  2. 完成导入
  3. 使用 复制到云端 功能同步数据

数据安全

  • 导出的数据不包含敏感信息
  • 导入时需要重新配置密码或密钥
  • 建议通过安全渠道传输导出文件

兼容性

导入功能支持从其他 SSH 工具迁移:

  • 数据格式相对通用
  • 基本字段(主机、端口、用户名)兼容大多数工具
  • 认证信息需要手动配置

下一步