Kor*_*OoO 10 windows cygwin batch-file
我已经以交互模式编写了批处理脚本,用于执行某些任务.
有时,这些任务需要很长时间才能完成,然后批处理会询问用户是否要继续执行下一个任务,或者返回批处理的主菜单或...等
现在,我想要做的是添加一个"交互式警报"命令,听起来很小的哔哔声(例如:当我们开启电脑时),提醒批处理用户提出新问题.
我不知道这是否可能,但对我来说最重要的是,不要使用像WMP这样的GUI应用程序.我只想在背景中这样做,即使必须要发出哔哔声来自免费发言人,或使用第三方CLI应用程序(顺便说一句,我在Win7-x64上安装了Cygwin).
请注意,我会在交互式问题之前添加该警报命令,等待用户的答案进入下一阶段,所以我不能通过发出真正的错误蜂鸣声来完成批处理!
那么,有人请告诉我该怎么做?
感谢您的帮助 :)
npo*_*aka 22
rundll32.exe Kernel32.dll,Beep 750,300
Run Code Online (Sandbox Code Playgroud)
要么
rundll32.exe cmdext.dll,MessageBeepStub
Run Code Online (Sandbox Code Playgroud)
要么
rundll32 user32.dll,MessageBeep
Run Code Online (Sandbox Code Playgroud)
使用rundll函数,你不需要像^G.使用第一种方法,您还可以设置您要发出哔哔声的频率和时间.
你也可以查看这个
Ste*_*han 10
BEL直接输入(例如)记事本是不可能的.
要获取它,请echo ^G>>yourbatch.bat在命令行上键入(不要键入^ G,但是<Control>-G,它将显示^G在屏幕上).这会在文件的末尾添加一个奇怪的字符.那是BEL字符0x007("control-G").只需将其复制/移动到任何echo命令即可.也
set /p "input=^Ggive value: "
Run Code Online (Sandbox Code Playgroud)
是可能的(其中^G代表奇怪的字符)
以下可用于发出哔声
Echo/| CHOICE /N 2> nul & rem BEL
Run Code Online (Sandbox Code Playgroud)
这是对选择命令的故意误用,即 Echo 通过管道连接到 Choice 什么也没有,从而导致非破坏性错误。STDERR 被重定向到 nul,并且默认选择提示通过/N开关被抑制,这意味着不输出新行。
如果出于某种原因您想在整个脚本中重复使用这种烦人的语气,您可以将其定义为宏
Set "BEL=Echo/| CHOICE /N 2> nul"
%BEL%
Run Code Online (Sandbox Code Playgroud)