我正在编写一个脚本,我需要以秒而不是毫秒从系统中读取时间。我注意到某些计算机的区域设置不同,这确实给我带来了一些问题,例如一台计算机的日期显示为01/01/2020
,另一台计算机01.01.2020
使用命令%date%
等。
如果我使用命令,同样的事情%time%
,一些计算机显示时间喜欢12:13:14,15
,一些喜欢12:13:14.16
。
现在,为了解决这个问题,我必须创建一个变量来读取分隔符号并输出正确的符号。对于命令 date 这很简单。
有时间我有这个命令:
FOR /F "tokens=3 delims=0123456789" %%A IN ('echo %time%') DO set timeSeparatorSymbol=%%A
如果计算机具有毫秒分隔符符号,.
则输出为:
timeSeparatorSymbol=.
哪个好。
如果计算机具有毫秒分隔符符号,,
则输出为:
timeSeparatorSymbol=
如您所见,未创建变量,我正在努力弄清楚为什么逗号不接受它作为变量。
无论区域设置如何,我都需要此脚本才能使以下脚本适用于所有计算机:
for /f "tokens=3 delims=:%timeSeparatorSymbol%" %%A in ('echo %time%') do set second=%%A
先感谢您。