使用批处理脚本创建包含 PC 序列号的文件夹,并在其中重定向日志文本文件

使用批处理脚本创建包含 PC 序列号的文件夹,并在其中重定向日志文本文件

尝试创建包含 PC 序列号的文件夹并在其中重定向日志文本文件。如果文件夹存在,则覆盖它。脚本正在执行,没有任何错误,但无法满足我的要求

我正在尝试的代码:

@echo off
for /F %%a in ('wmic bios get serialnumber') do call :Sub %%a
set "myDIR= %SerialNumber%"

if exist "C:\%myDIR%" (
    mkdir "C:\%myDIR% (2)" 2> Test.txt
) else (
    mkdir "C:\%myDIR%" 2> Test.txt
)
Pause
goto :eof

:Sub
if not "%*"=="" set SerialNumber=%*

答案1

脚本执行时没有任何错误,但无法满足我的要求

观察结果:

  1. 您有一个空间

    set "myDIR= %SerialNumber%"
    

    它应该是

     set "myDIR=%SerialNumber%"
    
  2. mkdir不输出任何内容,它设置errorlevel

    如果目录创建成功%ERRORLEVEL%=0

    如果 > 无法创建目录%ERRORLEVEL%=1

    来源:MD - 创建目录 - Windows CMD - SS64.com

    这意味着Test.txt在运行脚本的目录中创建了,但它是一个空文件。

  3. 您尚未指定任何要求。

    通过上述观察,脚本将创建适当的目录和一个空文本文件。

    您还没有说它还应该做什么。


进一步阅读

相关内容