解消法
Options
> Terminal
> Bell
の設定を no beep
にする。
optionの開き方
Options
は下記いずれかで開けます。
- ウインドウバーで右クリックし、メニューから
Options...
を選択 - ターミナル画面のどこかを右クリックし、メニューから
Options...
を選択
環境
下記のバージョンで確認しました。
- Windows 10 Home 1903
- Cygwin 3.1.2-1
- mintty 3.1.0 (x86_64-pc-cygwin)
試してダメだったこと
以下は私の環境で試して効果がなかったものの記録です。
環境によっては効果があるかもしれないので、必要に応じてご参考ください。
.inputrcに「set bell-style none」を追加する
Beep音を消したいサーバ&ユーザのホームディレクトリに.inputrc
を配置し、下記1文を記載します。
~/.inputrc
set bell-style none
その後、シェルの再起動(ログアウト&ログイン)をすると上記設定が読み込まれ、Beep音が消えるとのことでした。
私の環境ではサーバによって効果があったり無かったりでした。
管理しているサーバ全てに設定が必要なので、対象が多い場合は面倒かもしれないです。
WindowsサービスであるBeepを停止する
Beep音はWindowsサービスとして動いているようです。
サービス自体を止めてしまえば、CygwinでもBeep音がならないというものです。
コマンドプロンプトを管理者権限で起動し、下記コマンドを実行てみました。
コマンドプロンプト(管理者権限)
net stop beep
が、私の環境では下記結果となり、効果がありませんでした。
コマンドプロンプト(管理者権限)
C:\WINDOWS\system32>net stop beep
Beep サービスを停止中です........
Beep サービスを停止できませんでした。
その後サービス状態も確認しましたが、止めようとはしているものの、止まってはいなかったようです。
コマンドプロンプト(管理者権限)
C:\WINDOWS\system32>sc query beep
SERVICE_NAME: beep
TYPE : 1 KERNEL_DRIVER
STATE : 3 STOP_PENDING
(STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
キチンと調査すれば原因がわかるかもしれないですが、あきらめました。