ปิดใช้งานเสียงบี๊บของ Linux Bash บน Windows 10 [ปิด]


388

การมี Linux BashบนWindows 10นั้นค่อนข้างเท่ห์ แต่เท่าที่ฉันต้องต่อสู้กับเทอร์มินัลที่ไม่ดีพอจาก Microsoft ฉันจะติดกับ Ubuntu สำหรับทุกสิ่ง
อย่างไรก็ตามจะมีวิธีการที่จะปิดที่เสียงเตือนเมื่อใดก็ตามที่คุณทำบางสิ่งบางอย่างในทุบตี?
เนื่องจากเป็นไปไม่ได้ที่จะแสดงความคิดเห็นbell-style audibleเพราะไม่มีและไม่สามารถเปิดตัวได้sc config beep start= disabled


12
Q นี้ไม่เกี่ยวกับการเขียนโปรแกรมตามที่กำหนดไว้สำหรับ StackOverflow มันอาจจะเหมาะสมกว่าในเว็บไซต์ที่เกี่ยวข้อง superuser.com หรือ unix.stackexchange.com (Unix และ Linux) ลองใช้ลิงค์ตั้งค่าสถานะที่ด้านล่างของ Q ของคุณและขอให้ผู้ดำเนินรายการย้าย โปรดอย่าโพสต์คำถามเดียวกันนี้ใน 2 ไซต์ที่ต่างกัน ขอขอบคุณและขอให้โชคดี
shellter

9
คุณไม่สามารถset bell-style noneอยู่ในไฟล์ init ของ readline ใช่หรือไม่ นั่นคือ 1. ค่าของINPUTRCตัวแปรสภาพแวดล้อม 2. ~/.inputrcหรือ /etc/inputrc3.
Benjamin W.

@shellter คุณถูกฉันจะย้าย!
Andrea Tulimiero

ในขณะเดียวกัน @BenjaminW ฉันไม่ได้ตั้งค่ารูปแบบเบลล์ใน / etc / inputrc แต่มันใช้งานไม่ได้
Andrea Tulimiero

4
/etc/inputrcจะถูกละเว้นถ้าคุณมี~/.inputrcคุณมีหรือไม่ หรือINPUTRCชี้ไปที่อื่น?
Benjamin W.

คำตอบ:


588
  1. ในการปิดการใช้งานเสียงบี๊บในการทุบตีคุณจำเป็นต้องยกเลิกการใส่เครื่องหมาย (หรือเพิ่มถ้ายังไม่มี) set bell-style noneใน/etc/inputrcไฟล์ของคุณ

    หมายเหตุ:เนื่องจากเป็นไฟล์ที่มีการป้องกันคุณจะต้องเป็นผู้ใช้ที่มีสิทธิ์ในการแก้ไข (เช่นเปิดตัวแก้ไขข้อความด้วยสิ่งที่ต้องการsudo <editor> /etc/inputrc)

  2. หากต้องการปิดใช้งานเสียงบีปในกลุ่มคุณต้องเพิ่มไฟล์set visualbellของคุณ~/.vimrc

  3. ในการปิดใช้งานเสียงบีปในจำนวนที่น้อยลง (เช่นในหน้าคนและเมื่อใช้ "git diff") คุณต้องเพิ่มไฟล์export LESS="$LESS -R -Q"ของคุณ~/.profile


15
สำหรับการแก้ปัญหาแบบครั้งเดียวอย่างรวดเร็วสามารถปิดใช้งานผ่านทาง Windows Volume Mixer github.com/Microsoft/BashOnWindows/issues/…
Olga

51
FYI ฉันต้องรีสตาร์ทคอนโซลเพื่อให้ใช้งานได้ แต่ใช้งานได้!
TJB

2
@TJB ฉันคิดว่ามันควรจะเพียงพอที่จะเปิดตัวsource path-to-.bash_profile- หรือไฟล์ที่คุณเปลี่ยนแปลง - และการกำหนดค่าจะถูกโหลดใหม่ดังนั้นเพื่อให้คุณประหยัดจากการรีสตาร์ทคอนโซล อย่างไรก็ตามฉันดีใจที่มันใช้งานได้!
Andrea Tulimiero

2
มันจะดีกว่าถ้าคุณสามารถเพิ่มคำตอบของคุณที่คุณต้องรีสตาร์ทคอนโซลดังกล่าวโดย @TJB หรือตามที่คุณพูดsource path-to-.bash_profileแต่ขอบคุณมากสำหรับความช่วยเหลืออย่างไรก็ตาม
Aman Tugnawat

3
มันไม่ทำงานเลย
วินซ์

129

เนื่องจากเทอร์มินัลเสียงรบกวนเพียงอย่างเดียวที่มีแนวโน้มจะทำก็คือเสียงระฆังและหากคุณต้องการให้มันปิดทุกที่วิธีที่ง่ายที่สุดในการทุบตีบน Windows:

  1. ผสม backspace เป็นกลุ่มที่พรอมต์
  2. คลิกขวาที่ไอคอนเสียงและเลือก Open Volume Mixer
  3. ลดระดับเสียงบน Console Window Host ให้เป็นศูนย์

12
ฉันชอบความเรียบง่ายจริงๆ
engineercoding

8
เนื่องจากฉันใช้เซิร์ฟเวอร์จำนวนมากและไม่สามารถจัดการการตั้งค่า bash แบบโลคัลบนเซิร์ฟเวอร์ทั้งหมดได้อย่างง่ายดายโซลูชันนี้เป็นโซลูชันที่ดีที่สุดสำหรับฉันเพราะเป็นทั่วโลก
Elijah W. Gagne

9
โซลูชัน windows สำหรับปัญหาที่เกิดจาก windows: D
PabTorre

3
คุณกด backspace สักครู่หรือคีย์อื่น ๆ เพื่อทำให้หน้าต่างคอนโซลมีเสียงรบกวนหรือไม่? ทำสิ่งนี้ก่อนที่จะเปิดมิกเซอร์ แอปพลิเคชันจะไม่ปรากฏในตัวปรับแต่งเสียงจนกว่า Windows จะระบุว่ามีเสียงดัง จากนั้นจะลบออกหลังจากนั้นครู่หนึ่ง
TedMilker

2
ชีสและข้าว! นี่เป็นสิ่งเดียวที่ทำงานให้ฉัน น่ารำคาญแค่ไหน ขอบคุณ @TedMilker
Ilan

113

การไม่ใส่ความคิดเห็นset bell-style noneใน/etc/inputrcและสร้าง.bash_profileด้วยsetterm -blength 0จะไม่หยุดเสียงเรียกเข้าจากการส่งเสียงบี๊บ

สิ่งที่ทำงานให้ฉันได้รับการสร้างแฟ้มในไดเรกทอรีบ้านของฉันด้วย.vimrcset visualbell

ที่มา: https://linuxconfig.org/turn-off-beep-bell-on-linux-terminal


23
ว้าวทำไมเมื่อมีคนคิดว่าการส่งเสียงบี๊บเป็นค่าเริ่มต้นที่ดีเมื่อใด ขอบคุณ! คำตอบของคุณจำเป็นต้องปิดเสียงระฆังใน vi
Andrew T Finnell

ทำงานกับโลคัล แต่ไม่ดีสำหรับ ssh ไปยังเซิร์ฟเวอร์ระยะไกล
Matt

@Matt - สำหรับเซสชัน SSH คุณต้องปรับแต่งการตั้งค่าในไคลเอนต์ SSH ที่คุณใช้ ตัวอย่างเช่นหากคุณใช้ PuTTY ให้ปรับการตั้งค่าของมัน
asterx

1
คุณต้องใช้ทั้ง ~ / .inputrc และ a ~ / .vimrc เพื่อลบเสียงบี๊บจาก bash และ vim ดูคำตอบของ @ Nemo นอกจากนี้โปรดทราบว่าคุณต้องการไฟล์ทั้งสองนี้ในเครื่องระยะไกลที่คุณกำลังใช้ถ้าคุณต้องการหลีกเลี่ยงการส่งเสียงบี๊บจาก ssh
Romain Pokrzywka

78

คุณต้องเพิ่มบรรทัดต่อไปนี้เพื่อกำหนดค่า bash และ vim

1) ปิดระฆังเพื่อทุบตี

vi ~/.inputrc
set bell-style none

2) ปิดระฆังสำหรับ vi

vi ~/.vimrc
set visualbell
set t_vb=

การตั้งค่าเบลล์ที่มองเห็นจะปิดเสียงออดิโอและการล้างความยาวของเบลล์ที่มองเห็นจะหยุดการทำงานของการกระพริบ


5
ขอบคุณวิธีแก้ปัญหานี้เป็นที่ชื่นชอบของฉันเพราะมันบอกทั้งแหล่งที่มาของการส่งเสียงบี๊บ, เทอร์มินัลและเสียงเรียกเข้ารวมทั้งหลีกเลี่ยงการกระพริบจากระฆังภาพ ฉันชอบที่คุณกำลังสร้างโปรไฟล์ผู้ใช้แทนการแก้ไขไฟล์กำหนดค่าระบบใน / etc
Romain Pokrzywka

โปรดทราบว่าวิธีนี้ยังใช้งานได้ดีในการปิดการส่งเสียงบี๊บจาก ssh เมื่อเข้าถึงเครื่องระยะไกลเพียงแค่สร้างไฟล์เดียวกันในโฟลเดอร์บ้านของคุณบนเครื่องระยะไกลและไม่ส่งเสียงบี๊บอีกต่อไป
Romain Pokrzywka

นี่เป็นคำตอบที่ถูกต้องอย่างแท้จริงถอนหายใจ
ZJR

13

แทนที่ในระบบเสียง "ที่สำคัญหยุด" เพื่อ WAV ไฟล์ซึ่งเป็นเงียบ1

เพียงลบเสียงอย่างสมบูรณ์ไม่ได้ผลสำหรับฉัน เห็นได้ชัดว่ามีการใช้เสียงเริ่มต้นบางส่วนในกรณีนี้

ระบบกำหนดค่าเสียง

(เครดิตสำหรับสิ่งนี้ lau_ บนSuperUserสำหรับการค้นพบสิ่งนี้)


3
หากคุณมีกล่อง Linux คุณสามารถส่งเสียงเงียบได้ง่ายๆ 1 วินาที ติดตั้ง sox จากนั้น $ rec silence.wav ตัดแต่ง 0 1
LeviX

1
สิ่งนี้ช่วยฉัน เมื่อฉันตั้ง 'Critical Stop' เป็น None จะถูกรีเซ็ตเป็น 'Default Beep' ฉันต้องตั้งค่านั้นเป็น None เสียงเหล่านี้น่ารำคาญโดยเฉพาะเมื่อเราอยู่บนหูฟัง Windows ควรเรียนรู้
Venki

11

มันไม่ได้เฉพาะเจาะจงกับทุบตี windows 10 แต่ถ้าคุณต้องการลบเทอร์มินัลระฆังสำหรับ zsh เพียงใช้ตัวเลือกที่เหมาะสมใน zshrc (สำหรับเสียงเรียกเข้าตอบแล้ว)

unsetopt beep

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

ฉันพบตัวเลือกนี้อย่างรวดเร็ว แต่จะพบว่าเร็วขึ้นถ้ามันอยู่ในโพสต์นี้ ^^

HF


10

คลิกขวาที่ไอคอนเสียง (ด้านล่างขวา) >>> เปิดตัวปรับระดับเสียง >>> ปิดโฮสต์ของหน้าต่างคอนโซล


6

ฉันพบว่าวิธีการแก้ปัญหาของ TedMilker ทำงานได้ แต่ฉันจะต้องปรับแต่ง Volume Mixer ทุกครั้งที่เริ่มต้นใหม่ เพื่อให้เป็นแบบถาวรฉันได้ปรับระดับเสียงภายในการตั้งค่าระดับเสียงของแอพ Windows และการตั้งค่าอุปกรณ์

นำมาจากโพสต์นี้ :

การตั้งค่า / ระบบ / เสียง / แอพและการตั้งค่าอุปกรณ์

ตั้งค่า Console Window Host เป็นศูนย์

(คุณอาจต้องกด Tab / Backspace ในหน้าต่างคอนโซลเพื่อเรียกเสียงระฆังก่อนที่ตัวเลื่อน Console Window Host จะปรากฏขึ้น)


1

นอกจากสิ่งที่ jgr208 พูดคุณอาจมี~/.profileไฟล์อยู่แล้วและ~/.bash_profileอาจไม่ปรากฏเช่นกรณีที่เกิดขึ้นกับฉัน

ในกรณีนี้เพิ่มไปsetterm -blength 0.profile

หากคุณสร้าง a .bash_profileคุณ.profileจะถูกละเว้นและสิ่งที่ Windows เขียนไว้จะไม่ทำงาน


1

หากต้องการปิดการส่งเสียงบี๊บเมื่อ ssh-ing ในเครื่องรีโมตเพียงสร้างไฟล์~/.inputrcและ~/.vimrcไฟล์บนเครื่องรีโมตเพื่อหยุดการส่งเสียงบี๊บ

ดูคำตอบจาก @Nemo สำหรับเนื้อหาของแต่ละไฟล์


0

ค้นหาตำแหน่งของ.bash_profileไฟล์และป้อนข้อมูลต่อไปนี้ในไฟล์:

setterm -blength 0

ซึ่งจะกำหนดระยะเวลาที่เสียงบี๊บเกิดขึ้นที่ 0 และจะไม่มีเสียงบี๊บ


8
สิ่งนี้ไม่ได้ผลสำหรับฉัน - คำตอบอื่น ๆ เกี่ยวกับไฟล์ inputrc ทำ
reach4thelasers

@ reach4thelasers ดีซึ่งคุณต้องการปิดการส่งเสียงบี๊บ อย่างที่คุณเห็นด้านล่างสำหรับเสียงเรียกเข้าและคำตอบที่ฉันชอบทำงานได้
jgr208

มันเป็นเสียงบี๊บที่เกิดขึ้นเมื่อคุณกดปุ่มลบและไปไกล - ลองลบอะไรเลย ... น่ารำคาญมาก !!!
reach4thelasers

@ reach4thelasers ฮ่าฮ่าฉันรู้ว่าคุณหมายถึงอะไรลองจินตนาการว่าเสียงในห้องแล็บคอมพิวเตอร์ในวิทยาลัยที่มีนักเรียน 30 คน!
jgr208

1
สำหรับฉันมีเพียงวิธีการปิดการใช้งานเสียงบี๊ปของทุบตีคุณต้องยกเลิกการคอมเม้นท์ / เพิ่มชุดรูปแบบเบลล์ไม่มีในไฟล์ / etc / inputrc ของคุณทำงานให้ฉัน
benjguin

-1

@Andrea Tulimiero คำตอบของการทำงานในท้องถิ่น แต่เมื่อคุณ ssh ไปยังเซิร์ฟเวอร์ระยะไกลเสียงเตือนจะเปิดขึ้นอีกครั้ง คำแนะนำของฉันคือการปิดการใช้งานจากทาสก์บาร์ของ Windows 10 มีตัวปรับระดับเสียงที่มุมล่างขวาซึ่งเหมาะกับฉัน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.