Тема: CMD/BAT: звуки (3 разных + бонус: сигнал SOS)
Два примера, как вывести звук из батника:
@ echo off
setlocal enabledelayedexpansion
pause
echo Звуковой сигнал №1
call :beep1
pause
echo Звуковой сигнал №2
call :beep2
exit /b
:: Звуковой сигнал через символ с кодом 7 (Alt + 07)
:beep1
setlocal
0<nul set /p =[BEL]
endlocal & exit /b
:: Звуковой сигнал через choice
:beep2
echo 0y | choice /c y /n>nul
exit /b[BEL] - это непечатный символ с кодом 7. В форум его вставить нельзя, так что работающий пример качайте из вложения.
Подпрограмма beep1 выводит звук через символ с кодом 7.
Подпрограмма beep2 выводит звук через команду choice.
Не факт что везде будет работать, не проверял, но у меня оба метода работают и звуки разные.
Сигнал SOS
А вот и пример реализации сигнала SOS через звуки и мигание экраном:
@ echo off
setlocal enabledelayedexpansion
cls
title Сигнал SOS
:sos
call :M_S
call :M_O
call :M_S
call :pause 2
echo.
goto sos
exit /b
:: O: ---
:M_O
call :dash
call :dash
call :dash
exit /b
:: S: ...
:M_S
call :dot
call :dot
call :dot
exit /b
:: Точка (Морзе)
:dot
setlocal
0<nul set /p =.
color f0
call :beep2
color 07
endlocal & exit /b
:: Тире (Морзе)
:dash
setlocal
0<nul set /p =-
color f0
call :beep2
call :pause
color 07
endlocal & exit /b
:: Звуковой сигнал через choice
:beep2
echo 01 | choice /c 1 /n>nul
exit /b
:: Задержка в сек (0 - короткая задержка)
:pause
setlocal
set t=%1
if "%t%"=="" set t=0
timeout /t %t% >nul
endlocal & exit /b
Так как звук подается вызовом подпрограммы beep2, которая работает через choice, то и непечатных символов тут нет. Можно копировать код прямо с форума.

