You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在zsh中将中断快捷键从Ctrl+C重映射为Cmd+C

实现zsh Cmd+C映射为中断快捷键的方案

首先要明确:Cmd 是macOS系统级修饰键,默认不会直接传递给终端内的zsh进程,且触发SIGINT中断本身不是zsh的内置功能部件(widget),而是终端驱动收到对应ASCII码后主动发送中断信号给前台进程,所以你无法直接通过bindkey找到对应的操作ID,需要先在终端层做配置,方案如下:

步骤1:终端软件侧配置快捷键映射

若使用mac自带「终端.app」

  • 打开终端设置 → 描述文件 → 切换到「键盘」标签页
  • 点击「+」新增自定义快捷键
  • 快捷键输入框按下 Cmd+C,操作选择「发送字符串到Shell」,输入框填入 \x03 后保存即可

若使用iTerm2

  • 打开iTerm2设置 → Profiles → 选中你当前使用的配置文件 → 切换到「Keys」→「Key Bindings」标签页
  • 点击「+」新增快捷键规则
  • 键盘快捷键按下 Cmd+C,Action选择「Send Hex Code」,输入 0x03 后保存即可

步骤2:可选zsh配置(仅需禁用原有Ctrl+C中断时操作)

如果不需要保留原Ctrl+C的中断功能,只允许Cmd+C触发中断,可以在~/.zshrc文件中添加如下配置解绑原快捷键:

bindkey -r "^C"

添加后执行source ~/.zshrc即可立即生效。

完成上述配置后,Cmd+C就可以实现原Ctrl+C的中断操作效果。


内容的提问来源于stack exchange,提问作者MegaBomber

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 18:03:03