Deaktivieren Sie den Signalton von Linux Bash unter Windows 10 [geschlossen]

388

Ein Linux Bash unter Windows 10 zu haben ist ziemlich cool, aber soweit ich mit dem nicht so guten Terminal von Microsoft zu kämpfen habe, werde ich bei Ubuntu für alles hängen bleiben.
Wie auch immer, gibt es eine Möglichkeit, diesen Piepton auszuschalten , wenn Sie etwas auf dem Bash tun? Da es nicht möglich ist, Kommentare abzugeben, weil sie nicht vorhanden sind, ist es auch nicht möglich, sie zu starten
bell-style audiblesc config beep start= disabled

Andrea Tulimiero
quelle
12
In diesem Q geht es nicht um die Programmierung, wie sie für StackOverflow definiert ist. Es kann sein , besser geeignet für die verwandten Seiten superuser.com OR unix.stackexchange.com (Unix und Linux). Verwenden Sie den Flag-Link am unteren Rand Ihres Q und bitten Sie den Moderator, ihn zu verschieben. Bitte poste nicht das gleiche Q auf 2 verschiedenen Seiten. Danke und viel Glück.
Shellter
9
Können Sie nicht set bell-style nonein Ihrer Readline-Init-Datei? Das ist 1. der Wert der INPUTRCUmgebungsvariablen, 2. ~/.inputrcoder 3. /etc/inputrc.
Benjamin W.
@shellter du hast recht ich werde es bewegen!
Andrea Tulimiero
In der Zwischenzeit @BenjaminW. Ich habe in / etc / inputrc keine Glocke gesetzt, aber es hat nicht funktioniert
Andrea Tulimiero
4
/etc/inputrcwird ignoriert, wenn Sie eine haben ~/.inputrc, haben Sie eine? Oder INPUTRCwoanders hin zeigen?
Benjamin W.

Antworten:

588
  1. Um den Signalton in Bash zu deaktivieren , müssen Sie die Zeile set bell-style nonein Ihrer /etc/inputrcDatei auskommentieren (oder hinzufügen, falls nicht bereits vorhanden) .

    Hinweis: Da es sich um eine geschützte Datei handelt, müssen Sie ein privilegierter Benutzer sein, um sie bearbeiten zu können (dh starten Sie Ihren Texteditor mit so etwas wie sudo <editor> /etc/inputrc).

  2. Um den Signalton auch in vim zu deaktivieren , müssen Sie ihn set visualbellin Ihre ~/.vimrcDatei einfügen.

  3. Um den Piepton auch in weniger (dh auch in Manpages und bei Verwendung von "git diff") zu deaktivieren , müssen Sie export LESS="$LESS -R -Q"Ihre ~/.profileDatei hinzufügen .

Andrea Tulimiero
quelle
15
Für eine schnelle einmalige Lösung können Sounds über Windows Volume Mixer deaktiviert werden. Github.com/Microsoft/BashOnWindows/issues/…
Olga
51
Zu Ihrer Information, ich musste meine Konsole neu starten, damit dies zutraf, aber es hat funktioniert!
TJB
2
@TJB Ich denke, es sollte ausreichen, um zu starten source path-to-.bash_profile- oder die Datei, die Sie geändert haben - und die Konfiguration wird neu geladen, um Sie vor einem Neustart der Konsole zu bewahren. Ich bin jedoch froh, dass es funktioniert hat!
Andrea Tulimiero
2
Es wäre besser, wenn Sie Ihrer Antwort hinzufügen könnten, dass Sie die Konsole neu starten müssen, wie von @TJB erwähnt, oder wie Sie sagten, source path-to-.bash_profileaber vielen Dank für die Hilfe trotzdem.
Aman Tugnawat
3
Das funktioniert überhaupt nicht.
Vince
129

Da die einzigen Geräuschterminals dazu neigen, die Glocke zu erzeugen, und wenn Sie sie überall ausschalten möchten, ist dies der einfachste Weg, dies unter Windows zu tun:

  1. Mash Backspace ein Haufen an der Eingabeaufforderung
  2. Klicken Sie mit der rechten Maustaste auf das Sound-Symbol und wählen Sie Open Volume Mixer
  3. Verringern Sie die Lautstärke auf dem Konsolenfenster-Host auf Null
TedMilker
quelle
12
Ich mag die Einfachheit
Engineercoding
8
Da ich auf vielen Servern ssh und nicht einfach lokale Bash-Einstellungen auf allen Servern verwalten kann, war diese Lösung die beste für mich, da sie global war.
Elijah W. Gagne
9
eine Windows-Lösung für ein Windows-Problem: D
PabTorre
3
Haben Sie die Rücktaste gedrückt oder eine andere Taste gedrückt, damit das Konsolenfenster Geräusche macht? Tun Sie dies, bevor Sie den Mischer öffnen. Anwendungen werden erst im Mixer angezeigt, wenn Windows feststellt, dass sie Geräusche verursachen. Es wird sie dann nach einer Weile entfernen.
TedMilker
2
Käse und Reis! Dies ist das einzige, was für mich funktioniert hat. Wie nervig. Danke @ TedMilker
Ilan
113

Uncommenting set bell-style nonein /etc/inputrcund Schaffung von .bash_profilemit setterm -blength 0nicht von piepen hinderte vim.

Was für mich funktioniert hat, war eine .vimrcDatei in meinem Home-Verzeichnis mit zu erstellen set visualbell.

Quelle: https://linuxconfig.org/turn-off-beep-bell-on-linux-terminal

MWin123
quelle
23
Wow, warum und wann hielt jemand das Piepen für einen guten Standard? Vielen Dank! Ihre Antwort wird benötigt, um den Klingelton in vi auszuschalten.
Andrew T Finnell
Funktioniert für lokale, aber nicht gut für SSH zu Remote-Servern.
Matt
@Matt - Für eine SSH-Sitzung müssen Sie die Einstellung in dem von Ihnen verwendeten SSH-Client anpassen. Wenn Sie beispielsweise PuTTY verwenden, passen Sie die Einstellungen an.
Asterx
1
Sie benötigen sowohl ein ~ / .inputrc als auch ein ~ / .vimrc, um die Signaltöne sowohl von bash als auch von vim zu entfernen (siehe @ Nemos Lösung). Beachten Sie auch, dass Sie diese beiden Dateien auf Remotecomputern benötigen, auf die Sie ssh-in, wenn Sie das Piepen von ssh vermeiden möchten.
Romain Pokrzywka
78

Sie müssen die folgenden Zeilen zu bash und vim config hinzufügen:

1) Schalten Sie die Glocke für Bash aus

vi ~/.inputrc
set bell-style none

2) Schalten Sie die Glocke für vi aus

vi ~/.vimrc
set visualbell
set t_vb=

Durch Einstellen der visuellen Glocke wird die Audio-Glocke ausgeschaltet und durch Löschen der visuellen Glockenlänge wird das Blinken deaktiviert.

Nemo
quelle
5
Vielen Dank, diese Lösung ist meine Lieblingslösung, da sie beide Pieptonquellen, das Terminal selbst und vim, anspricht und das Blinken der visuellen Glocke verhindert. Ich mag auch, dass Sie Benutzerprofile erstellen, anstatt die Systemkonfigurationsdateien in / etc zu bearbeiten
Romain Pokrzywka
Beachten Sie, dass dies auch gut funktioniert, um das Signalton von ssh beim Zugriff auf einen Remotecomputer zu deaktivieren. Erstellen Sie einfach dieselben Dateien in Ihrem Home-Ordner auf dem Remotecomputer und keine Signaltöne mehr.
Romain Pokrzywka
Dies ist die wirklich richtige Antwort,
seufz
13

Im System ersetzen Klingt der "Critical Stop" zu einer stillen WAV-Datei 1 .

Nur den Ton komplett zu entfernen, hat bei mir nicht funktioniert. Anscheinend wurde in diesem Fall ein Standardton verwendet.

System klingt Konfiguration

(Credits für this.lau_ auf SuperUser, um dies zu entdecken).

Juha Palomäki
quelle
3
Wenn Sie eine Linux-Box haben, ist es einfach, 1 Sekunde lang Stille zu erzeugen. Installiere sox. Dann $ rec Schweigen.wav trimmen 0 1
LeviX
1
Das hat mir geholfen. Wenn ich 'Critical Stop' auf None gesetzt habe, wurde es auf 'Default Beep' zurückgesetzt, das musste ich auch auf None setzen. Diese Geräusche sind besonders dann ärgerlich, wenn wir Kopfhörer verwenden. Windows sollte lernen.
Venki
11

Es ist nicht spezifisch für Bash Windows 10. Wenn Sie jedoch das Klingelterminal für zsh entfernen möchten, verwenden Sie einfach die richtige Option in zshrc. (für vim, antworte bereits gepostet)

unsetopt beep

http://zsh.sourceforge.net/Doc/Release/Options.html

Ich habe diese Option schnell gefunden, würde sie aber noch schneller finden, wenn sie in diesem Beitrag enthalten wäre ^^

hf

NoZero
quelle
10

Klicken Sie mit der rechten Maustaste auf das Sound-Symbol (unten rechts). >>> Öffnen Sie den Volume Mixer >>> Stummschalten des Konsolenfensters

Brett Lapierre
quelle
6

Ich fand, dass die Lösung von TedMilker funktionierte, aber ich musste den Lautstärkemischer bei jedem Neustart neu einstellen. Um es dauerhaft zu machen, habe ich die Lautstärke in den Windows App-Lautstärke- und Geräteeinstellungen angepasst.

Aus diesem Beitrag entnommen :

Einstellungen / System / Sound / App-Lautstärke und Geräteeinstellungen

Setzen Sie den Konsolenfenster-Host auf Null.

(Möglicherweise müssen Sie im Konsolenfenster die Tabulatortaste / Rücktaste drücken, um den Klingelton auszulösen, bevor der Schieberegler "Konsolenfenster-Host" angezeigt wird.)

GobiJerboa
quelle
1

Zusätzlich zu dem, was jgr208 gesagt hat, haben Sie möglicherweise bereits eine ~/.profileDatei und sind ~/.bash_profilemöglicherweise nicht vorhanden, wie dies bei mir der Fall war.

In diesem Fall fügen Sie setterm -blength 0dem hinzu .profile.

Wenn Sie eine erstellen .bash_profile, wird Ihre .profileignoriert und alles, was Windows dort geschrieben hat, funktioniert nicht.

Rosinenaufstand
quelle
1

Um die Signaltöne beim SSH auf einem Remotecomputer zu deaktivieren, erstellen Sie einfach dieselben ~/.inputrcund ~/.vimrcDateien auf dem Remotecomputer, um zu verhindern, dass SSH selbst piept.

In der Antwort von @Nemo finden Sie den Inhalt jeder Datei.

Romain Pokrzywka
quelle
0

Suchen Sie den Speicherort der .bash_profileDatei und geben Sie Folgendes in die Datei ein:

setterm -blength 0

Dadurch wird die Zeitspanne festgelegt, in der der Signalton auf 0 und somit kein Signalton erfolgt.

jgr208
quelle
8
Dies funktionierte nicht für mich - die andere Antwort über die inputrc-Datei hat
erreicht4thelasers
@each4thelasers Nun, welchen Piepton wollten Sie deaktivieren? Wie Sie unten für vim und dergleichen sehen können, funktioniert meine Antwort.
jgr208
Es war der Piepton, der passiert, wenn Sie die Löschtaste drücken und zu weit gehen - versuchen Sie also, nichts zu löschen ... so nervig !!!
erreichen4thelasers
@each4thelasers haha ​​ich weiß was du meinst, stell dir diesen Sound während meines Computerlabors im College mit 30 Studenten vor!
jgr208
1
Für mich hat nur die Lösung Um den Piepton der Bash zu deaktivieren, müssen Sie den Kommentar "Glockenstil" in Ihrer / etc / inputrc-Datei auskommentieren / hinzufügen.
Benjamin
-1

Die Antwort von @Andrea Tulimiero funktioniert lokal, aber wenn Sie zu einem Remote-Server ssh, wird der Piepton wieder eingeschaltet. Mein Vorschlag ist, die Windows 10-Taskleiste zu deaktivieren. In der rechten unteren Ecke befindet sich ein Lautstärkemischer, der für mich funktioniert.

Phoenix Zou
quelle