带有 if errorlevel errorlog 的批处理文件

batch file for with if errorlevel errorlog

我想要的是,如果用户已经存在,只需将此用户的名称放入 errorlog.txt

我有这个:

set var_b=123
    FOR /F %%v in (%arxiu%) do (
        net user %%v >nul 2>nul
        if errorlevel 1 ( net user %%v %var_b% /add >nul 2>nul
        )
        if errorlevel 0 ( echo %%v >> C:\Users\%username%\Desktop\errorlog.txt
        )
    )

但是通过这段代码,我得到了已经存在的用户的名称和创建的一条新闻,我不知道为什么会出现任何错误?

请参阅 Microsoft 支持文章 Testing for a Specific Error Level in Batch Files

if errorlevel X 表示如果前一个命令的退出代码 大于或等于 X.

使用以下批处理代码:

set "var_b=123"
for /F %%v in (%arxiu%) do (
    net user %%v >nul 2>nul
    if errorlevel 1 (
        net user %%v %var_b% /add >nul 2>nul
    ) else (
        echo %%v>>"%USERPROFILE%\Desktop\errorlog.txt"
    )
)