告别窗口切换!Electerm分屏+跨会话复制粘贴全攻略

告别窗口切换!Electerm分屏+跨会话复制粘贴全攻略

【免费下载链接】electerm 📻Terminal/ssh/telnet/serialport/sftp client(linux, mac, win) 【免费下载链接】electerm 项目地址: https://gitcode.com/gh_mirrors/el/electerm

你是否还在为管理多个SSH会话频繁切换窗口而烦恼?是否经历过终端内容复制粘贴时格式错乱或丢失的尴尬?本文将带你解锁Electerm的分屏布局与智能剪贴板功能,让多会话终端操作效率提升300%。读完本文,你将掌握分屏创建、内容共享、跨会话粘贴的全套技巧,彻底告别终端操作的痛点。

分屏布局:让多会话管理一目了然

Electerm提供了灵活的分屏功能,支持多种布局模式满足不同场景需求。无论是同时监控多台服务器,还是对比分析不同日志文件,分屏功能都能让你无需切换窗口即可掌控全局。

分屏布局类型

Electerm内置了9种预设布局,从简单的二分屏到复杂的2x2网格布局,覆盖了绝大多数使用场景:

布局类型适用场景快捷键
单列布局单会话专注工作Alt+1
双列布局对比两个相关会话Alt+2
三列布局多服务器监控Alt+3
双行布局上下分区工作Alt+4
三行布局多日志并行查看Alt+5
2x2网格四会话均衡分布Alt+6
右侧双行主会话+辅助会话Alt+7
底部双列主会话+结果验证Alt+8

布局定义在src/client/components/tabs/index.jsx中,通过图标组件直观展示不同布局样式:

const iconMaps = {
  single: SingleIcon,
  twoColumns: TwoColumnsIcon,
  threeColumns: ThreeColumnsIcon,
  twoRows: TwoRowsIcon,
  threeRows: ThreeRowsIcon,
  grid2x2: Grid2x2Icon,
  twoRowsRight: TwoRowsRightIcon,
  twoColumnsBottom: TwoColumnsBottomIcon
}

创建分屏的三种方式

1. 通过菜单栏快速创建

点击终端顶部的布局按钮(图标为四个小方块),在下拉菜单中选择所需布局:

分屏布局菜单

2. 使用键盘快捷键

按下Alt+数字键直接切换到对应布局,这是效率最高的方式。例如Alt+2立即切换为双列布局。

3. 拖拽标签页手动分屏

按住标签页拖动到窗口的左侧、右侧、顶部或底部,当出现蓝色提示区域时释放鼠标,即可创建自定义分屏。

分屏的尺寸计算逻辑在src/client/components/layout/session-size-alg.js中实现,确保各分屏区域大小合理分配。

跨会话复制粘贴:无缝共享内容

Electerm的剪贴板功能不仅支持基本的复制粘贴,还针对多会话场景做了特别优化,让内容在不同终端会话间自由流动。

基础复制粘贴操作

复制:在终端中选中文本后,有三种复制方式:

  • 右键菜单选择"复制"
  • 使用快捷键Ctrl+C(即使在终端中,选中文本后Ctrl+C会优先执行复制)
  • 直接按下鼠标中键(如果是三键鼠标)

复制功能实现于src/client/common/clipboard.js

export const copy = (str) => {
  message.success({
    content: window.translate('copied'),
    duration: 2,
    key: 'copy-message'
  })
  window.pre.writeClipboard(str)
}

粘贴:在目标终端中使用以下方式粘贴:

  • 右键菜单选择"粘贴"
  • 使用快捷键Ctrl+V
  • 直接按下鼠标中键

跨会话粘贴技巧

1. 无需切换窗口的粘贴

在分屏模式下,只需将光标定位到目标终端,直接使用粘贴快捷键即可,无需先点击切换窗口。这极大提升了多会话操作效率。

2. 处理超长文本粘贴

当粘贴超过1000字符的长文本时,Electerm会智能弹出确认窗口,避免意外粘贴大量内容:

src/client/components/terminal/terminal.jsx中的实现:

pasteTextTooLong = () => {
  const text = readClipboard()
  return text && text.length > 1000
}

// 超长文本处理逻辑
if (this.pasteTextTooLong()) {
  Modal.confirm({
    title: e('paste'),
    width: 600,
    content: (
      <div>
        <p>{e('paste')}:</p>
        <div className='paste-text'>
          {readClipboard().substring(0, 200)}...
        </div>
        <p className='mt1x'>{e('text_too_long_warning')}</p>
      </div>
    ),
    onOk: () => {
      this.term.paste(readClipboard())
    }
  })
  return
}

3. 文件路径智能识别

Electerm能自动识别剪贴板中的文件路径,当检测到路径格式文本时,会提供快速打开或传输选项:

src/client/common/clipboard.js中的路径识别正则:

const fileRegWin = /^(remote:)?\w:\\.+/
const fileReg = /^(remote:)?\/.+/

实用场景示例

场景一:多服务器批量操作

  1. 使用Alt+3切换到三列布局
  2. 分别连接三台服务器
  3. 在左侧终端输入命令并复制
  4. 依次在中间和右侧终端粘贴执行

场景二:日志分析与命令编写

  1. 创建上下分屏布局(Alt+4
  2. 上半屏查看日志文件
  3. 下半屏编写分析命令
  4. 复制日志中的关键信息到下半屏命令中

场景三:跨服务器文件传输

  1. 左右分屏布局(Alt+2
  2. 左侧连接源服务器,右侧连接目标服务器
  3. 在左侧选中文件并复制路径
  4. 在右侧终端粘贴路径,执行scp命令传输

高级技巧与注意事项

自定义复制粘贴快捷键

如果默认快捷键不符合你的习惯,可以在设置中自定义:

  1. 打开设置面板(Ctrl+,
  2. 选择"快捷键"选项卡
  3. 找到"终端复制"和"终端粘贴"选项
  4. 点击编辑按钮设置新的快捷键

相关配置存储在src/client/common/default-setting.js中。

解决粘贴格式错乱问题

如果粘贴文本出现格式错乱,尝试以下解决方法:

  1. 在粘贴前使用Ctrl+Shift+V进行纯文本粘贴
  2. 在设置中禁用"粘贴时保留格式"选项
  3. 更新Electerm到最新版本

安全粘贴模式

对于不信任的文本,可使用安全粘贴模式,Electerm会对内容进行检查,防止恶意命令执行:

设置路径:设置 > 终端 > 启用安全粘贴

总结

Electerm的分屏与跨会话复制粘贴功能,为多终端操作提供了高效解决方案。通过本文介绍的技巧,你可以:

  • 告别繁琐的窗口切换,同时管理多个会话
  • 实现终端内容的无缝共享
  • 提升多服务器操作效率
  • 减少重复输入,降低出错风险

更多高级功能等待你探索,完整使用文档可参考项目README_cn.md。立即升级到最新版Electerm,体验高效终端工作流!

【免费下载链接】electerm 📻Terminal/ssh/telnet/serialport/sftp client(linux, mac, win) 【免费下载链接】electerm 项目地址: https://gitcode.com/gh_mirrors/el/electerm

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值