我正在创建一个bat文件,以便根据其中一个任务自动创建文件夹。我写了一个简单的for循环来检查文本文件中的文件夹名称,然后自动创建该文件夹。
这里出现两种情况:
情形1:如果文件夹不存在,则创建一个新文件夹。
情况2:如果文件夹已经存在,则将错误记录到该文件夹已经存在的日志文件中。(我已经使用>> folder_create_log.log 2>&1
来达到目的)
但是,我也想为成功创建的文件夹创建日志。为此,我想到了使用windows bat文件的%errorlevel%
。
代码位如下:
set param="
for /F "delims=" %%a in (%FILE_NAME%.txt) do (
mkdir %param%S:blitz2Data%%aAudit%param% >> folder_create_log.log 2>&1
mkdir %param%S:blitz2Data%%aWorking%param% >> folder_create_log.log 2>&1
mkdir %param%L:ZaiUploadBlitz%%a%param% >> folder_create_log.log 2>&1
mkdir %param%L:ZaiUploadBlitz%%aArchive%param% >> folder_create_log.log 2>&1
echo %errorlevel%
pause
)
但是由于>> folder_create_log.log 2>&1
工作良好,它被视为成功,并且%错误级别%显示为0
而不是1
谁能帮我把成功的创建记录到日志文件中?
md test && echo successful
&&
的工作方式为"如果前一个命令成功,则"。
相反的是||
,所以一个完整的命令看起来像:
md test && echo successful || echo failed