Отключить звуковой сигнал PowerShell в backspace

эта функция, кажется, были добавлены в PowerShell версии 5.1, как я не нахожу его на моем ноутбуке до сих пор работает 5.0.

при нажатии Backspace в PowerShell, он будет издавать звуковой сигнал, если нет (больше) текст для удаления. Это довольно раздражает, если вы случайно удерживаете клавишу слишком долго, так как звук будет продолжать идти в течение короткого времени после того, как вы отпустите его.

нашел этой супер вопрос пользователя, который предлагает отключить служба звуковых сигналов, которая работает, но я хотел бы по-прежнему иметь возможность использовать звуковые сигналы в сценариях.

Как отключить звуковой сигнал "beep on backspace" без полного отключения звуковых сигналов?

22
задан Community
18.05.2023 16:15 Количество просмотров материала 3215
Распечатать страницу

4 ответа

звуковой сигнал, предусмотренных PSReadline модуль, который поставляется с Windows 10. Вам нужно изменить PSReadline возможность отключить звонок:

Set-PSReadlineOption -BellStyle None

если вы хотите это изменение для всех будущих сеансов PowerShell, то вам нужно добавить эту команду к профиль PowerShell. Например, для установки параметра "текущий пользователь, текущий хост" ($Profile):

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
if (!(Test-Path -Path "$Profile")) {New-Item -ItemType File -Path "$Profile" -Force}
Add-Content -Value "Set-PSReadlineOption -BellStyle None" -Path "$Profile"

первая строка позволяет вашему профилю запускать сценарий запуска при открытии PowerShell (О Политике Исполнения). Вторая строка проверяет, есть ли у вас уже сценарий запуска, определенный для "текущий пользователь, текущий хост". Третья строка добавляет опцию bell в сценарий запуска.

91
отвечен PetSerAl 2023-05-20 00:03

более постоянное решение, которое расширяет @PetSerAl'ы ответ:

  1. запустить PowerShell от имени администратора.
  2. выполнить: set-executionpolicy remotesigned. Это позволит запускать сценарии PowerShell на компьютере. Если вы не уверены, что это не продолжится.
  3. на C:\Windows\System32\WindowsPowerShell\v1.0 Если вы находитесь на Windows 10.
  4. создайте файл с именем Microsoft.PowerShell_profile.ps1.
  5. отредактируйте этот файл и добавьте Set-PSReadlineOption -BellStyle None.
  6. откройте новую консоль PowerShell и вы больше не должны слышать звуковой сигнал.

все (новые) консоли PowerShell для всех пользователей на вашем компьютере теперь молчат.

этот ответ предназначен для Windows 10.  Для других версий Windows папка может отличаться.

17
отвечен Odys 2023-05-20 02:20

Я подал этот элемент Github против PsReadLine, так как я не уверен, что это изменение было преднамеренным -https://github.com/lzybkr/PSReadLine/issues/422

2
отвечен Craig 2023-05-20 04:37

адаптация ответа @Odys с использованием оболочки Bash в подсистеме Windows для Linux (при условии, что она включена).

1 Откройте командную строку от имени администратора и выполните команду

set-executionpolicy remotesigned

2 типа bash, чтобы начать Баш оболочки

3 перейдите в соответствующий каталог

cd /mnt/c/Windows/System32/WindowsPowerShell/v1.0 

4 создайте файл с именем "Microsoft.Powershell_profile.ps1 "и написать" Set-PSReadlineOption-BellStyle None " к нему

echo "Set-PSReadlineOption -BellStyle None" >> Microsoft.Powershell_profile.ps1
1
отвечен Evan Rosica 2023-05-20 06:54

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх