尝试创建包含 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
脚本执行时没有任何错误,但无法满足我的要求
观察结果:
您有一个空间
set "myDIR= %SerialNumber%"
它应该是
set "myDIR=%SerialNumber%"
mkdir
不输出任何内容,它设置errorlevel
如果目录创建成功
%ERRORLEVEL%
=0
如果 > 无法创建目录
%ERRORLEVEL%
=1
来源:MD - 创建目录 - Windows CMD - SS64.com
这意味着
Test.txt
在运行脚本的目录中创建了,但它是一个空文件。您尚未指定任何要求。
通过上述观察,脚本将创建适当的目录和一个空文本文件。
您还没有说它还应该做什么。