Disabilita il segnale acustico di Linux Bash su Windows 10 [chiuso]


388

Avere un Linux Bash su Windows 10 è piuttosto interessante, ma per quanto riguarda il terminale non così buono fornito da Microsoft, rimarrò bloccato con Ubuntu per tutto.
Ad ogni modo, c'è un modo per disattivare quel segnale acustico ogni volta che fai qualcosa sul Bash?
Dal momento che non è possibile commentare bell-style audibleperché non c'è, né è possibile avviaresc config beep start= disabled


12
Questo Q non riguarda la programmazione come definito per StackOverflow. Si può essere più appropriato sui relativi siti superuser.com O unix.stackexchange.com (Unix e Linux). Prendi in considerazione l'utilizzo del link flag nella parte inferiore della tua Q e chiedi al moderatore di spostarlo. Si prega di non pubblicare la stessa Q su 2 siti diversi. Grazie e buona fortuna
shellter

9
Non puoi set bell-style nonenel tuo file init readline? Questo è 1. il valore della INPUTRCvariabile d'ambiente, 2. ~/.inputrco 3 /etc/inputrc..
Benjamin W.,

@shellter hai ragione, lo sposterò!
Andrea Tulimiero,

Nel frattempo @BenjaminW. Ho impostato nessuno stile campana in / etc / inputrc ma non ha funzionato
Andrea Tulimiero,

4
/etc/inputrcviene ignorato se ne hai uno ~/.inputrc, ne hai uno? O INPUTRCindicando altrove?
Benjamin W.,

Risposte:


588
  1. Per disabilitare il segnale acustico in bash è necessario decommentare (o aggiungere se non già presente) la linea set bell-style nonenel /etc/inputrcfile.

    Nota: poiché si tratta di un file protetto, è necessario essere un utente privilegiato per modificarlo (ad esempio, avviare l'editor di testo con qualcosa di simile sudo <editor> /etc/inputrc).

  2. Per disabilitare il segnale acustico anche in vim devi aggiungere il set visualbelltuo ~/.vimrcfile.

  3. Per disabilitare il segnale acustico anche in meno (cioè anche nelle pagine man e quando si usa "git diff") è necessario aggiungere export LESS="$LESS -R -Q"il ~/.profilefile.


15
Per una rapida soluzione una tantum, i suoni possono essere disabilitati tramite il Mixer del volume di Windows github.com/Microsoft/BashOnWindows/issues/…
Olga,

51
Cordiali saluti, ho dovuto riavviare la mia console per applicare questo, ma ha funzionato!
TJB,

2
@TJB Penso che dovrebbe essere sufficiente avviare source path-to-.bash_profile- o il file che hai modificato - e la configurazione verrà ricaricata, così da salvarti dal riavvio della console. Comunque sono contento che abbia funzionato!
Andrea Tulimiero,

2
Sarebbe meglio se potessi anche aggiungere alla tua risposta che devi riavviare la console come menzionato da @TJB o come hai detto, source path-to-.bash_profilema grazie mille per l'aiuto comunque.
Aman Tugnawat,

3
Questo non funziona affatto.
Vince

129

Poiché gli unici terminali di rumore tendono a fare è il campanello e se lo vuoi ovunque, il modo più semplice per farlo per bash su Windows:

  1. Mash backspace un mazzo al prompt
  2. Fare clic con il tasto destro sull'icona del suono e selezionare Apri volume mixer
  3. Abbassa il volume su Console Window Host a zero

12
Mi piace molto la semplicità
ingegneristica del

8
Dato che ho un sacco di server e non riesco a gestire facilmente le impostazioni bash locali su tutti i server, questa soluzione è stata la migliore per me perché era globale.
Elija W. Gagne,

9
una soluzione Windows per un problema causato da Windows: D
PabTorre

3
Hai premuto backspace per un po 'o qualche altro tasto per fare rumore nella finestra della console? Fallo prima di aprire il mixer. Le applicazioni non appariranno nel mixer fino a quando Windows non determinerà che stanno facendo rumore. Li rimuoverà dopo un po '.
TedMilker,

2
Di formaggio e riso! questa è l'unica cosa che ha funzionato per me. Che fastidio. Grazie @TedMilker
Ilan,

113

Decommentando set bell-style nonein /etc/inputrce creando una .bash_profilecon setterm -blength 0non si è fermata vim da segnale acustico.

Ciò che ha funzionato per me è stato la creazione di un .vimrcfile nella mia directory home con set visualbell.

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


23
Wow, perché quando qualcuno ha pensato che emettere un segnale acustico fosse un buon default? Grazie! La risposta è necessaria per disattivare il suono della campana in vi.
Andrew T Finnell,

Funziona per locale, ma non va bene per server SSH ai server remoti.
Matt,

@Matt: per la sessione SSH è necessario modificare l'impostazione nel client SSH che si sta utilizzando. Ad esempio, se stai usando PuTTY, modifica le sue impostazioni.
asterx,

1
hai bisogno sia di ~ / .inputrc sia di ~ / .vimrc per rimuovere i segnali acustici sia da bash che da vim, vedi la soluzione di @ Nemo. Nota anche che hai bisogno di questi due file su macchine remote su cui stai scrivendo se vuoi evitare il bip di ssh.
Romain Pokrzywka,

78

È necessario aggiungere le seguenti righe per bash e vim config,

1) Disattiva la suoneria per bash

vi ~/.inputrc
set bell-style none

2) Disattiva la suoneria per vi

vi ~/.vimrc
set visualbell
set t_vb=

L'impostazione della campana visiva disattiva la campana audio e la cancellazione della lunghezza della campana visiva disattiva il lampeggiamento.


5
Grazie, questa soluzione è la mia preferita in quanto riguarda entrambe le fonti di segnale acustico, il terminale stesso e VIM, oltre a evitare il lampeggiamento della campana visiva. Mi piace anche che tu stia creando profili utente invece di modificare i file di configurazione del sistema in / etc
Romain Pokrzywka,

Si noti che questo funziona anche per disabilitare il segnale acustico di ssh quando si accede a un computer remoto, basta creare gli stessi file nella cartella principale sul computer remoto e non più bip.
Romain Pokrzywka,

Questa è la vera risposta corretta, sospiro
ZJR

13

Sostituisci in Suoni di sistema "Stop critico" su un file wav che è silenzioso 1 .

La sola rimozione del suono non ha funzionato per me. Apparentemente in questo caso è stato utilizzato un suono predefinito.

Il sistema suona la configurazione

(Riconoscimenti per this.lau_ su SuperUser per averlo scoperto).


3
Se hai una scatola Linux è facile emettere un suono di silenzio di 1 secondo. Installa sox. Quindi $ rec silence.wav trim 0 1
LeviX

1
Questo mi ha aiutato. Quando ho impostato 'Critical Stop' su None, è stato resettato su 'Default Beep', ho dovuto impostare anche quello su None. Questi suoni sono fastidiosi soprattutto quando siamo in cuffia. Windows dovrebbe imparare.
Venki,

11

non è specifico per bash windows 10. ma se vuoi rimuovere il terminale bell per zsh, usa l'opzione giusta in zshrc. (per vim, risposta già pubblicata)

unsetopt beep

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

Ho trovato questa opzione rapidamente, ma la troverei ancora più veloce se fosse su questo post ^^

HF


10

fare clic con il tasto destro sull'icona del suono (in basso a destra) >>> apri il mixer del volume >>> disattiva l'host della finestra della console


6

Ho scoperto che la soluzione di TedMilker funzionava, ma avrei bisogno di regolare nuovamente il Mixer del volume ogni volta che ho riavviato. Per renderlo permanente, ho regolato i livelli di volume in Volume app Windows e Preferenze dispositivo.

Tratto da questo post :

Impostazioni / Sistema / Suono / Volume app e preferenze dispositivo

Impostare l'host della finestra della console su zero.

(Potrebbe essere necessario premere Tab / Backspace nella finestra della console per attivare il suono della campana prima che appaia il cursore Host della finestra della console.)


1

Oltre a quanto detto da jgr208, potresti avere ~/.profilegià un file e ~/.bash_profilenon essere presente, come è stato il mio caso.

In questo caso, aggiungi setterm -blength 0a .profile.

Se crei un .bash_profile, il tuo .profileverrà ignorato e tutto ciò che Windows ha scritto lì non funzionerà.


1

Per disabilitare i segnali acustici quando si invia l'ssh in un computer remoto, è sufficiente creare gli stessi ~/.inputrce i ~/.vimrcfile sul computer remoto per impedire a ssh stesso di emettere un segnale acustico.

Vedi la risposta di @Nemo per il contenuto di ciascun file.


0

Trova la posizione del .bash_profilefile e inserisci quanto segue nel file:

setterm -blength 0

Il che imposta la quantità di tempo in cui il segnale acustico si verifica su 0 e quindi nessun segnale acustico.


8
Questo non ha funzionato per me - l'altra risposta sul file
inputrc ha

@ reach4thelasers bene quale segnale acustico vuoi disabilitare? come puoi vedere qui sotto per vim e simili, la mia risposta funziona.
jgr208

È stato il segnale acustico che si verifica quando si preme il pulsante Elimina e si va troppo lontano, quindi provare a eliminare nulla ... così fastidioso !!!
reach4thelasers il

@ reach4thelasers haha ​​so cosa intendi, immagina quel suono durante il mio laboratorio di informatica al college con 30 studenti!
jgr208

1
per me, solo la soluzione Per disabilitare il segnale acustico di bash è necessario decommentare / aggiungere set nessuna campana nel file / etc / inputrc ha funzionato per me.
Benjguin,

-1

La risposta di @Andrea Tulimiero funziona per locale, ma quando si invia a un server remoto, il segnale acustico si attiva di nuovo. Il mio suggerimento è di disabilitare dalla barra delle applicazioni di Windows 10. C'è un mixer del volume nell'angolo in basso a destra, che funziona per me.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.