我写了一个小的计时器脚本作为.bat文件,它每30分钟(1800秒)在弹出的消息框中提醒我(16次)“ Move!”。该脚本在Windows 7(32位)系统上运行良好,但似乎“ msg”命令无法使用或对于64位系统不存在。除了此命令以外,还有什么替代方法可以轻松替换该命令?
set TIMER=(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16)
set USERS=(%username%)
set MESSAGE=Move!
for %%i in %TIMER% do call :doit
:doit
for %%i in %USERS% do msg %%i %MESSAGE%
timeout /t 1800 /nobreak
goto:eof
答案 0 :(得分:1)
您可以创建一个临时的VBS脚本,运行它然后删除它。
程序底部包括:
exit /b
:msg
set tempPath=%temp%\msgbox.vbs
echo msgbox "%message%" > %tempPath% && %tempPath% && del %tempPath%
goto:eof
然后您可以像这样通过脚本使用它:
set message=Hello World
call:msg
所以在您的情况下:
set TIMER=(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16)
set USERS=(%username%)
set MESSAGE=Move!
for %%i in %TIMER% do call :doit
:doit
set message=%MESSAGE%
call:msg
timeout /t 1800 /nobreak
goto:eof
exit /b
:msg
set tempPath=%temp%\msgbox.vbs
echo msgbox "%message%" > %tempPath% && %tempPath% && del %tempPath%
goto:eof