在 Windows 10 上的 WSL 终端中禁用蜂鸣声[关闭]
Posted
技术标签:
【中文标题】在 Windows 10 上的 WSL 终端中禁用蜂鸣声[关闭]【英文标题】:Disable beep in WSL terminal on Windows 10 [closed] 【发布时间】:2016-08-11 23:24:34 【问题描述】:如何在 Windows 10 上的 WSL 中禁用视觉和音频铃声/哔声?
【问题讨论】:
这个问题与 *** 定义的编程无关。 可能在相关站点 superuser.com 或 unix.stackexchange.com(Unix 和 Linux)上更合适。考虑使用 Q 底部的标志链接并要求版主移动它。请不要在 2 个不同的网站上发布相同的 Q。谢谢,祝你好运。 你不能在你的 readline 初始化文件中set bell-style none
吗?即 1.INPUTRC
环境变量的值,2.~/.inputrc
或 3./etc/inputrc
。
/etc/inputrc
如果你有~/.inputrc
会被忽略,你有吗?还是 INPUTRC
指向别处?
@shellter 我认为这个问题在这里很好。据我所知,问题不一定是关于编程才有资格获得 SO。
这个问题正在meta讨论。
【参考方案1】:
要在 bash 中禁用哔声,您需要在 /etc/inputrc
文件中取消注释(或添加,如果还没有的话)set bell-style none
行。
注意:由于它是一个受保护的文件,您需要成为特权用户才能对其进行编辑(即使用 sudo <editor> /etc/inputrc
之类的内容启动您的文本编辑器)。
要在 vim 中禁用哔声和可视铃,您需要将 following 添加到您的 ~/.vimrc
文件中:
set visualbell
set t_vb=
要在 less 中也禁用哔声(即,在手册页中以及使用“git diff”时),您需要在您的 ~/.profile
文件中添加 export LESS="$LESS -R -Q"
。
【讨论】:
为了快速一次性解决声音,可以通过 Windows 音量混合器 github.com/Microsoft/BashOnWindows/issues/… 禁用 仅供参考,我必须重新启动控制台才能应用,但它确实有效! @TJB 我认为启动source path-to-.bash_profile
- 或您更改的文件 - 并且配置将被重新加载,这样就可以避免您重新启动控制台。不过我很高兴它成功了!
这根本行不通。
为什么这不是默认设置?有没有人想,“伙计,每次我完成标签时,我真正需要听到的是 BEEEP BEEEP BEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEP”【参考方案2】:
在系统中替换 将“关键停止”声音变为静音 1 的 wav 文件。
完全消除声音对我不起作用。显然,在这种情况下使用了一些默认声音。
(感谢SuperUser 上的 this.lau_ 发现这一点)。
【讨论】:
如果你有一个 Linux 机器,很容易发出 1 秒的静音。安装袜子。然后 $ rec quiet.wav trim 0 1 这对我有帮助。当我将“关键停止”设置为无时,它被重置为“默认哔声”,我也必须将其设置为无。这些声音很烦人,尤其是当我们戴着耳机时。 Windows 应该学习。【参考方案3】:我发现 TedMilker 的解决方案有效,但每次重新启动时我都需要重新调整音量混合器。为了使其永久化,我在 Windows App Volume 和 Device Preferences 中调整了音量。
取自this post:
设置/系统/声音/应用音量和设备偏好
将控制台窗口主机设置为零。
(您可能需要在控制台窗口中按 Tab / Backspace 才能在控制台窗口主机滑块出现之前触发铃声。)
【讨论】:
【参考方案4】:要在远程机器上 ssh 时禁用哔声,只需在远程机器上创建相同的 ~/.inputrc
和 ~/.vimrc
文件以阻止 ssh 本身发出哔声。
查看@Nemo 的回答,了解每个文件的内容。
【讨论】:
很确定.vimrc
在这里没有意义【参考方案5】:
@Andrea Tulimiero 的答案适用于本地,但是当您 ssh 到远程服务器时,哔声再次打开。我的建议是从 Windows 10 任务栏中禁用。右下角有音量混合器,对我有用。
【讨论】:
【参考方案6】:它并不特定于 bash windows 10。 但是如果你想删除 zsh 的 bell 终端,只需在 zshrc 中使用正确的选项。 (对于 vim,答案已经发布)
unsetopt beep
http://zsh.sourceforge.net/Doc/Release/Options.html
我很快就找到了这个选项,但如果它在这篇文章中会更快^^
高频
【讨论】:
【参考方案7】:您需要在 bash 和 vim 配置中添加以下行,
1) 关闭 bash 的铃声
vi ~/.inputrc
set bell-style none
2) 关闭 vi 的铃声
vi ~/.vimrc
set visualbell
set t_vb=
设置可视铃声会关闭音频铃声,清除可视铃声长度会停用闪烁。
【讨论】:
谢谢,这个解决方案是我最喜欢的,因为它解决了哔哔声的两个来源,终端本身和 vim,并且避免了视觉铃声的闪烁。我也喜欢您创建用户配置文件而不是在 /etc 中编辑系统配置文件 请注意,这也可以很好地在访问远程计算机时禁用来自 ssh 的蜂鸣声,只需在远程计算机上的主文件夹中创建相同的文件,就不会再发出蜂鸣声了。 我正在使用 git git 版本 2.31.0。窗户十。 Windows 终端。将我的 inputrc 文件设置为“set bell-style none”对我有用。【参考方案8】:由于唯一的噪音终端往往是铃声,如果你想在任何地方关闭它,最简单的方法是在 Windows 上为 bash 做到这一点:
-
在提示符下混合退格键
右键单击声音图标并选择打开音量混合器
将控制台窗口主机上的音量降低到零
【讨论】:
我真的很喜欢简洁 鉴于我通过 ssh 连接到很多服务器并且无法轻松管理所有服务器上的本地 bash 设置,因此这个解决方案对我来说是最好的,因为它是全球性的。 针对 windows 引起的问题的 windows 解决方案 :D 您是否按退格键或其他键使控制台窗口发出噪音?在打开搅拌机之前执行此操作。在 Windows 确定它们发出噪音之前,应用程序不会出现在混音器中。然后它会在一段时间后删除它们。 奶酪和米饭!这是唯一对我有用的东西。真烦人。谢谢@TedMilker【参考方案9】:在/etc/inputrc
中取消注释set bell-style none
并使用setterm -blength 0
创建.bash_profile
并没有阻止vim 发出哔哔声。
对我有用的是在我的主目录中使用set visualbell
创建一个.vimrc
文件。
来源:https://linuxconfig.org/turn-off-beep-bell-on-linux-terminal
【讨论】:
哇,为什么有人认为哔哔声是一个很好的默认设置?谢谢!需要您的回答才能关闭 vi 中的铃声。 适用于本地,但不适用于 ssh 到远程服务器。 @Matt - 对于 SSH 会话,您需要调整正在使用的 SSH 客户端中的设置。例如,如果您使用 PuTTY,请调整其设置。 您需要一个 ~/.inputrc 和一个 ~/.vimrc 来从 bash 和 vim 中删除哔哔声,请参阅@Nemo 的解决方案。另请注意,如果您想避免来自 ssh 的哔哔声,则需要在您正在 ssh 连接的远程计算机上使用这两个文件。【参考方案10】:除了 jgr208 所说的之外,您可能已经有一个 ~/.profile
文件,而 ~/.bash_profile
可能不存在,就像我的情况一样。
在这种情况下,将setterm -blength 0
添加到.profile
。
如果您创建.bash_profile
,您的.profile
将被忽略,Windows 在那里写入的任何内容都将不起作用。
【讨论】:
【参考方案11】:找到.bash_profile
文件的位置,在文件中输入以下内容:
setterm -blength 0
这会将哔声发生的时间设置为 0,因此不会发出哔声。
【讨论】:
这对我不起作用 - 关于 inputrc 文件的另一个答案是 @reach4thelasers 您想禁用哪个哔声?正如您在下面看到的 vim 之类的,我的回答确实有效。 这是当您按下删除按钮并且走得太远时发生的哔哔声 - 所以尝试删除任何内容......太烦人了!!! @reach4thelasers 哈哈,我明白你的意思,想象一下我在大学里有 30 名学生的计算机实验室的声音! 对我来说,只有解决方案要禁用 bash 的哔声,您需要在 /etc/inputrc 文件中取消注释/添加 set bell-style none 对我有用。以上是关于在 Windows 10 上的 WSL 终端中禁用蜂鸣声[关闭]的主要内容,如果未能解决你的问题,请参考以下文章
在 Windows 10 上的 WSL2 上使用 JDK 的正确方法是啥?
对于使用 WSL2 进行签名的 git 提交,Windows 10 上的 Visual Studio Code 中没有 GPG 密码提示
在 Windows 10 Home 上使用 WSL2 上的 Docker Desktop 时,如何更改 docker 映像的位置?