在批处理代码中回显没有换行符的 BEL 字符?

在批处理代码中回显没有换行符的 BEL 字符?

使用 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

相关内容