我通过添加set bell-style none到本地.inputrc文件在本地禁用了系统蜂鸣声;但是,当远程 ssh 到机器时,我仍然会因为使用 TAB 进行自动完成而收到系统提示音,我经常这样做。我知道我可以修改远程机器的.inputrc文件或远程帐户.bashrc文件,但这对我不拥有的机器来说是侵入性的。有没有办法在本地解决这个问题。
我正在使用 Windows 10 Ubuntu Bash。
哔哔声越来越慢,让我发疯。
您可以随时使用该bind命令设置 readline 变量,而无需读取.inputrc文件。例如,在您登录后键入
bind 'set bell-style none'
Run Code Online (Sandbox Code Playgroud)
请注意命令必须是单个字符串。如果您想每次都自动执行此操作,您可以使用一个expect将远程主机名作为参数的简单脚本。
#!/usr/bin/expect -f
spawn ssh [lindex $argv 0]
expect {$ }
send "bind 'set bell-style none'\n"
expect {$ }
interact
Run Code Online (Sandbox Code Playgroud)
.inputrc.mine这是一个解决方法,首先,使用以下命令在远程用户的主目录中创建一个文件
set bell-style none
Run Code Online (Sandbox Code Playgroud)
然后使用登录到服务器
ssh -t user@server 'export INPUTRC=~/.inputrc.mine; /bin/bash'
Run Code Online (Sandbox Code Playgroud)
如果没有-t您的 bash 将无法工作(输入/输出重定向到上一个命令)。