Ошибка синтаксиса в if
Делаю небольшой батник и понадобилось использовать цикл if
Код:
set /p ls="Choose language:"
if "%ls%"=="ru"(
net user Администратор /active:yes
@:Назначаем ему пароль
net user Администратор 1234
@:Создаем пользователя User
net user User /add
@:Назначаем его админом
net localgroup Администраторы User /add
) else (
@:Активируем встроенного админа
net user Administrator /active:yes
@:Назначаем ему пароль
net user Administrator 1234
@:Создаем пользователя User
net user User /add
@:Назначаем его админом
net localgroup Administrators User /add
)
Ругается на неправильный синтаксис, но я уже тысячу раз все перепроверил и не могу найти ошибку, помогите, пожалуйста
|
Test_CMD, можете использовать и такой код, независимо от языка:
Код:
@echo off
setlocal enableextensions enabledelayedexpansion
for /f "usebackq delims=" %%i in (
`wmic.exe UserAccount where "LocalAccount=TRUE AND SID LIKE 'S-1-5-21-%%-500'" get Name /value ^| find.exe /i "Name"`
) do set sAdmin%%i
if defined sAdminName (
net.exe user %sAdminName% 1234 /active:yes
)
for /f "usebackq delims=" %%i in (
`wmic.exe Group where "LocalAccount=TRUE AND SID = 'S-1-5-32-544'" get Name /value ^| find.exe /i "Name"`
) do set sAdminGroup%%i
if defined sAdminGroupName (
net.exe user User /add
net.exe localgroup %sAdminGroupName% User /add
)
endlocal
exit /b 0
|
Test_CMD, Кроме того, что уже указал alpap, конструкция типа @: Тра ля ля , повторенная много раз, приведёт к ошибке. Замените её на rem Тра ля ля
|
Время: 10:32.
© OSzone.net 2001-