72

我需要在批处理文件中打印时间,但命令提示符告诉我语法不正确。这是我到目前为止的代码:

@echo %time%
ping -n 1 -w 1 127.0.0.1 1>nul
@echo %time%
pause
cls

我不知道为什么它不起作用,请帮助我。

4

6 回答 6

117

这适用于 Windows 10、8.x、7 以及可能更早的版本:

@echo Started: %date% %time%
.
.
.
@echo Completed: %date% %time%
于 2016-04-27T18:20:30.313 回答
76

如果你使用命令

time /T

这将打印时间。(没有/T,它会尝试设置时间)

date /T

日期相似。

如果启用了 cmd 的命令扩展(它们默认启用,但在这个问题中它们似乎被禁用),那么环境变量%DATE%%TIME%将在每次扩展时扩展为当前日期和时间。使用的格式与DATEandTIME命令相同。

要查看启用命令扩展时存在的其他动态环境变量,请运行set /?.

于 2013-11-11T05:18:42.993 回答
14

echo我们可以使用下面的system变量轻松打印当前时间和日期。

echo %DATE% %TIME%

输出示例:2019 年 9 月 13 日 15:53:05.62

于 2019-09-13T10:25:09.053 回答
1

仅使用 DOS 的最简单方法是echo. | time.

此方法甚至适用于 Windows 7 x64 命令窗口。

于 2021-09-02T04:02:16.163 回答
1

不确定您的问题是否已得到解答。

这将每 20 秒在文件 ping_ip.txt 中写入时间和日期。倒数第二行只是说再次运行相同的批处理文件,然后再一次,再一次,............等等。

似乎没有创建多个实例,所以这是一件好事。

@echo %time% %date% >>ping_ip.txt
ping -n 20 -w 3 127.0.0.1 >>ping_ip.txt
This_Batch_FileName.bat
cls
于 2018-06-02T00:20:14.093 回答
-2

您可以使用命令time /t来获取时间和date /t日期,这是一个示例:

@echo off
time /t >%tmp%\time.tmp
date /t >%tmp%\date.tmp
set ttime=<%tmp%\time.tmp
set tdate=<%tmp%\date.tmp
del /f /q %tmp%\time.tmp
del /f /q %tmp%\date.tmp
echo Time: %ttime%
echo Date: %tdate%
pause >nul

您还可以使用内置变量 %time% 和 %date%,这是另一个示例:

@echo off
echo Time: %time:~0,5%
echo Date: %date%
pause >nul
于 2019-02-19T17:36:09.567 回答