我一直在想,使用这个 dos 命令
for %a in (MyFile.txt) do set FileDate=%~ta
有没有办法得到从天到秒的完整日期?
编辑:
现在我得到:
set FileDate=04/08/2011 15:37
我想要的是:
set FileDate=04/08/2011 15:37:04
答案1
%~tX 输出使用区域设置中定义的短格式。遗憾的是,短格式永远不能包含秒(至少在 Win7 上如此,不确定其他 Windows 版本是否如此)。
据我所知,仅使用 cmd 脚本命令无法完成您想要的操作。您需要一个额外的实用程序来从文件系统中提取完整的日期/时间信息。
答案2
首先:这不是“DOS 命令”。 DOS与此无关,完全不涉及。它是Microsoft 默认命令解释器(与 Windows NT 捆绑在一起)的 内置FOR
命令。Microsoft的 DOS 命令解释器 中的命令没有这样的功能,尤其是因为 DOS 没有文件创建时间戳的概念。CMD
FOR
COMMAND
第二:作为内置的命令解释器,这种事情首先取决于实际使用的命令解释器。你想要的东西很容易实现JP Software 的命令解释器 TCC, 例如:
[C:\]echo %@filedate[config.sys,c,4] %@filetime[config.sys,c,s]
2008-11-07 18:11:38
[C:\]