0

我想获取当前时间并使用时间名称创建一个文件夹。如何将时间提取到变量中?

SET %%DESTINATIONDIRROOT = "I:\directory\"
SET %%DESTINATIONDIRSEPERATOR = "\"
SET %%DESTINATIONDIR = TIME


for /F "usebackq delims=" %%b IN (`DIR /B /S /A "C:\RandomTestFiles\*.*"`) DO @(
   XCOPY  /Y "%%~b" %%DESTINATIONDIRROOT%%DESTINATIONDIR%%DESTINATIONDIRSEPERATOR
)
4

3 回答 3

2

如果您有 XP Pro 及更高版本,请调整这些内容。它们不受区域设置和日期/时间变量变化的影响,并且被正确填充。

:: 时间戳 YYYYMMDD_HHMMSS

@echo off
for /f "delims=" %%a in ('wmic OS Get localdatetime  ^| find "."') do set dt=%%a
set dt=%dt:~0,8%_%dt:~8,6%
echo %dt%
pause

:: 时间戳 YYYY-MM-DD_HH-MM-SS

@echo off
for /f "delims=" %%a in ('wmic OS Get localdatetime  ^| find "."') do set dt=%%a
set dt=%dt:~0,4%-%dt:~4,2%-%dt:~6,2%_%dt:~8,2%-%dt:~10,2%-%dt:~12,2%
echo %dt%
pause
于 2013-05-17T12:32:28.980 回答
0

创建一个名为yyyy-mm-dd_hh-mm

for /f "tokens=1-4 delims=/ " %%a in ('date /t') do (set bdate=%%c-%%b-%%a)
for /f "tokens=1-2 delims=/:" %%a in ('time /t') do (set btime=%%a-%%b)
md %bdate%_%btime%

对于欧式日期 (dd-mm-yyyy),使用bdate=%%a-%%b-%%c.

对于美式日期 (mm-dd-yyyy),请使用bdate=%%b-%%a-%%c.

注意:机器语言环境en-US可能会逆转上述两种情况。

于 2013-05-17T12:21:36.973 回答
0

考虑 %DATE% 和 %TIME%:

SET someVar = %TIME%

这样做:https ://stackoverflow.com/a/1254897/431415

于 2013-05-17T12:21:39.630 回答