将文件命名为批处理中的当前日期

时间:2012-03-02 18:28:25

标签: scripting batch-file

我正在尝试使用以下命令导出当前日期作为文件名称的注册表项:

reg export "HKEY_CURRENT_USER\Network" "\\10.52.32.150\TimeMachine\PRETEND\%username%\%date%.reg"

但我收到“错误:系统无法找到指定的注册表项或值”

为什么这不起作用?

由于

1 个答案:

答案 0 :(得分:1)

%date%为您提供所设置区域设置的日期。对我来说,这是ISO 8601,即YYYY-MM-DD,但在许多其他情况下,它可能是疯狂的,例如MM / DD / YY。特别是后一种情况会产生问题,因为斜线很可能不允许(或解释为层次分隔符)。

您可以使用WMI通过

以可用(和便携式)形式获取当前日期
for /f "skip=1" %%x in ('wmic os get localdatetime') do if not defined mydate set mydate=%%x
set mydate=%mydate:~0,8%

然后,您在%mydate%中以YYYYMMDD形式显示当前日期。