使用 cmd 中的 Bel 字符(CTRL+G 字符),我可以在批处理文件中发出声音。但是,由于其工作方式,它会生成一个新行。有没有办法在发出声音时不生成新行?
答案1
我最终使用了这个:
Echo | set /p=“Ctrl+G”
其中 ctrl+g 是 Bel 字符。
答案2
检查一下关联- 好处是,这是一个可复制粘贴的代码,不需要可能被误解的晦涩字符:
@echo off
setlocal
::Define a Linefeed variable
set LF=^
::above 2 blank lines are critical - do not remove.
call :hexprint "0x0B" BEL
echo --%BEL%--
exit /b
:hexPrint string [rtnVar]
for /f eol^=^%LF%%LF%^ delims^= %%A in (
'forfiles /p "%~dp0." /m "%~nx0" /c "cmd /c echo(%~1"'
) do if "%~2" neq "" (set %~2=%%A) else echo(%%A
exit /b