如何使用批处理文件将第二秒的时间捕获到变量中。我的脚本现在看起来像这样。
CLS
@ECHO OFF
set yy=%date:~-4%
set mm=%date:~-7,2%
set dd=%date:~-10,2%
set newdate=%dd%%mm%%yy%
echo %newdate%
我已经捕获了日期,它打印出我需要的内容,但现在我需要将时间附加到变量上。我该怎么做?
答案 0 :(得分:1)
首先将时间读入变量以获取快照,以便在提取字段时不会保持滴答声。然后使用set
子字符串运算符来提取您想要的内容。
时间格式为HH:MM:SS.MS
(至少在我的en-us语言环境中)。一个问题是小时字段可能以前导空格开头,因此您需要if
条件将其更改为前导零或删除空格。
set "current_time=%time%"
set "hour=%current_time:~0,2%"
if "%current_time:~0,1%"==" " set "hour=0%current_time:~1,1%"
set "min=%current_time:~3,2%"
set "sec=%current_time:~6,2%"
set "ms=%current_time:~-2%"
set "newtime=%hour% %min% %sec% %ms%"
echo %newtime%
如果你想在一小时内删除前方空格而不是将其更改为前导零,那么你可以这样做:
set "hour=%current_time:~0,2%"
if "%current_time:~0,1%"==" " set "hour=%current_time:~1,1%"
答案 1 :(得分:1)
@ECHO OFF
CLS
set yy=%date:~-4%
set dd=%date:~-7,2%
set mm=%date:~-10,2%
set newdate=%dd%%mm%%yy%_%Time:~0,8%
set newdate=%newdate::=%
echo %newdate%
pause
答案 2 :(得分:0)
这对我有用:
CLS
@ECHO OFF
set yy=%date:~-4%
set mm=%date:~-7,2%
set dd=%date:~-10,2%
set newdate=%dd%%mm%%yy% & time /T
echo %newdate%
pause
您可以通过添加&
符号来运行多个命令。如果您只想追加时间,如果第一个命令已经过了,请改用&&
。