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

如何在WSL全局范围内关闭提示音?

在WSL层面全局关闭SSH远程会话提示音的方法

当然可以在WSL层面实现全局关闭提示音,不用逐个修改远程实例的配置,这里提供两种实用方案:

方案1:禁用WSL终端本身的响铃

直接让WSL使用的终端模拟器不再播放任何响铃信号,覆盖所有本地和远程会话的触发:

  • 编辑WSL的全局shell配置文件(比如/etc/bash.bashrc,针对bash用户),在末尾添加:
    # 关闭终端响铃
    stty bell off
    stty -echoctl
    
  • 如果使用zsh,编辑/etc/zsh/zshrc,添加:
    setopt no_beep
    
  • 保存后重启WSL终端,后续所有操作(包括SSH远程)都不会触发终端响铃。

方案2:让SSH连接自动关闭远程终端响铃

通过配置SSH,让每次连接远程实例时自动执行关闭响铃的命令,不影响本地会话:

  • 编辑WSL用户目录下的SSH配置文件~/.ssh/config(如果不存在则创建),添加以下内容:
    Host *
      RequestTTY yes
      RemoteCommand stty bell off && stty -echoctl && exec $SHELL
    
  • 这个配置会对所有SSH连接生效:每次连接时先执行关闭响铃的命令,再启动远程shell。如果远程系统使用的不是bash,可将$SHELL替换为对应shell(比如zsh)。

替代方案:用SSH别名快速生效

如果不想修改SSH配置,也可以在~/.bashrc或~/.zshrc中添加别名:

alias ssh='ssh -t "stty bell off && stty -echoctl && exec \$SHELL"'

之后使用ssh命令连接远程时,会自动执行关闭响铃的操作。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 13:12:12