批处理 判断输入的数字是否含有符号

比如如果我输入12,则将变量赋值为12:00如果我输入12:22,则将变量赋值为12:22我的问题是如何实现只输入数字时自动加上冒号,输入的数字含有冒号时继续执行刚才有位... 比如如果我输入12,则将变量赋值为12:00
如果我输入12:22,则将变量赋值为12:22
我的问题是如何实现只输入数字时自动加上冒号,输入的数字含有冒号时继续执行

刚才有位朋友albumin回答我的问题,本来想追问,不小心点成采纳了,希望您能继续解答我的问题
这是你刚才给的代码
@echo off
:loop
set /p num=请输入数字:
echo %num%|findstr "^[0-9][0-9]*$" >nul && set num=%num%:00
echo %num%|findstr "^[0-9][0-9]*:[0-9][0-9]*$" > nul ||(echo 请重新输入&goto :loop)
echo %num%
pause
你能告诉我echo后的语句是什么意思吗
还有,请帮我看看怎么在下面的代码中使用
@echo off
set/p c=请输入关机时间(带分钟则输入xx:xx):
at %c% shutdown /s
echo 系统将会于%c%关机
pause
展开
 我来答
qop_dob
推荐于2016-05-28 · TA获得超过1.5万个赞
知道大有可为答主
回答量:1.3万
采纳率:79%
帮助的人:4032万
展开全部
@echo off&mode con cols=40 lines=4
:loop
cls
echo;请输入关机时间(带分钟则输入xx:xx):
set /p n=
set t=1%n::=%1
set /a %t% 2>nul||(echo;输入非法&ping -n 2 0 >nul&goto loop)
echo;%n%|find ":" >nul||set n=%n%:00
at %n% shutdown -s -t 0
echo 系统将会于%n%关机
ping -n 3 0 >nul
更多追问追答
追问
你好,能给我详细说说每一步的含义吗?
追答
::关闭回显并设置窗口大小
@echo off&mode con cols=40 lines=4
::一个标签
:loop
::清屏
cls
::显示文字
echo;请输入关机时间(带分钟则输入xx:xx):
::输入
set /p n=
::格式化输入
set t=1%n::=%1
::判断输入是否为数字
set /a %t% 2>nul||(echo;输入非法&ping -n 2 0 >nul&goto loop)
::判断输入是否有冒号
echo;%n%|find ":" >nul||set n=%n%:00
::设置定时关机
at %n% shutdown -s -t 0
::显示文字
echo 系统将会于%n%关机
::计时2秒
ping -n 3 0 >nul

及时采纳回答

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式