执行批处理文件时出现无效的命名空间错误

Invalid Namespace Error while executing batch file

过去 1 年我一直在使用批处理文件,但是突然我开始出现以下错误,同时 运行 它:

ERROR:Description = Invalid namespace

对于下面的代码块:

for /f "skip=1 tokens=1-6 delims= " %%a in ('wmic path Win32_LocalTime Get Day^,Hour^,Minute^,Month^,Second^,Year /Format:table') do (
        IF NOT "%%~f"=="" (
            set /a FormattedDate=10000 * %%f + 100 * %%d + %%a
            set FileDate=!FormattedDate:~-2,2!!FormattedDate:~-4,2!!FormattedDate:~-10,4!
            set Month=!FormattedDate:~-4,2!
        )
    )

我不太熟悉 bat 文件,只是使用上面的代码以所需格式获取当前日期。

系统:Windows10

请协助。提前致谢。

编辑:

更笼统地说,我实际上是想从系统日期获取 3 件事:

尝试使用以下代码获取您需要的变量:

@Echo Off
Set "df=%TEMP%\~foo.ddf"&Set "tf=%TEMP%\~%Random%"
Set /A "Jan=1,Feb=2,Mar=3,Apr=4,May=5,Jun=6,Jul=7,Aug=8,Sep=9,Oct=10,Nov=11,Dec=12"
(   Echo .Set InfHeader=""&Echo .Set InfSectionOrder=""&Echo .Set InfFooter="%%2"
    For /L %%A In (1 1 4) Do Echo .Set InfFooter%%A=""
    Echo .Set Cabinet="OFF"&Echo .Set Compress="OFF"&Echo .Set DoNotCopyFiles="ON"
    Echo .Set RptFileName="NUL")>"%df%"
MakeCab /D InfFileName="%tf%" /F "%df%">Nul
For /F "UseBackQ Tokens=2,3,5" %%A In ("%tf%") Do (Set mmm=%%A
    Set /A "mm=%%A,dd=1%%B-100,yyyy=%%C")
Del "%tf%" "%df%">Nul 2>&1
Set "mm=10%mm%"&Set "DStr=%dd%%mmm%%yyyy%"
Set "FileDate=%dd%%mm:~-2%%yyyy%"&Set "Month=%mm:~-2%"
For %%A In (FileDate Month DStr) Do Call Echo %%%%%%A%%%% = %%%%A%%
Pause

添加最后两行只是为了向您展示设置的变量; 在此之前不要更改任何内容: