在Windows批处理脚本中读取日期时间字符串

时间:2016-01-14 19:38:26

标签: windows datetime batch-file cmd

我在文本文件中以04-NOV-2015 23:16:33的格式提供时间戳。在Windows批处理脚本中,A for循环使用%% x读取这些字符串。但是' echo %% x'仅显示没有时间戳的日期。我们可以格式化echo %% x来显示时间戳吗?

更新:现有for循环我有:

for /f "tokens=1,2,3,4 skip=1" %%i in (inputfile.txt) do (
REM This input file has 4 columns of data. 4th column is the timestamp.
REM Hence have %%l after %%i, %%j, %%k below 
echo %%l
)

更新:已解决。

SQL查询存在问题,该问题在输入文件中生成时间戳。好吧,我现在把循环更改为"令牌= 1,2,3,4,5"并将日期和时间视为要读取的批处理文件的单独实体。

2 个答案:

答案 0 :(得分:0)

试试这个:

@echo off
for /F "skip=1 usebackq tokens=4,5" %%x in ("timestamps.txt") do (
echo %%x %%y
)
pause

应该有效

我猜你使用了tokens=1而没有指定delims,这会导致脚本只在第一个空格之前打印部分行

答案 1 :(得分:0)

SQL查询存在问题,该问题在输入文件中生成时间戳。好吧,我现在把循环更改为"令牌= 1,2,3,4,5"并将日期和时间视为要读取的批处理文件的单独实体。

for /f "tokens=1,2,3,4,5 skip=1" %%i in (inputfile.txt) do (

echo %%l %%m
)