rukito
13-01-2023, 09:18
Добрый день всем.
Есть скрипт, суть - при входе на любой сервер после запуска скрипт получает имя сервера и соответственно выполняется нужное условие. Но работает не верно из-за синтаксических ошибок.
Прошу помощи.
@echo off
setlocal
if (%hostname%) EQU "SRV-TL-TSD0608" do ((qwinsta /server:SRV-TL-TSD0508 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0508 %%i /V
qwinsta /server:SRV-TL-TSD0408 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0408 %%i /V
qwinsta /server:SRV-TL-TSD0308 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0308 %%i /V
qwinsta /server:SRV-TL-TSD0208 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0208 %%i /V
qwinsta /server:SRV-TL-TSD0108 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0108 %%i /V
)
else if (%hostname%) EQU "SRV-TL-TSD0508" do ( qwinsta /server:SRV-TL-TSD0608 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0608 %%i /V
qwinsta /server:SRV-TL-TSD0408 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0408 %%i /V
qwinsta /server:SRV-TL-TSD0308 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0308 %%i /V
qwinsta /server:SRV-TL-TSD0208 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0208 %%i /V
qwinsta /server:SRV-TL-TSD0108 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0108 %%i /V
)
else if (%hostname%) EQU "SRV-TL-TSD0408" do ( qwinsta /server:SRV-TL-TSD0608 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0608 %%i /V
qwinsta /server:SRV-TL-TSD0508 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0508 %%i /V
qwinsta /server:SRV-TL-TSD0308 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0308 %%i /V
qwinsta /server:SRV-TL-TSD0208 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0208 %%i /V
qwinsta /server:SRV-TL-TSD0108 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0108 %%i /V
)
else if (%hostname%) EQU "SRV-TL-TSD0308" do ( qwinsta /server:SRV-TL-TSD0608 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0608 %%i /V
qwinsta /server:SRV-TL-TSD0508 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0508 %%i /V
qwinsta /server:SRV-TL-TSD0408 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0408 %%i /V
qwinsta /server:SRV-TL-TSD0208 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0208 %%i /V
qwinsta /server:SRV-TL-TSD0108 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0108 %%i /V
)
else if (%hostname%) EQU "SRV-TL-TSD0208" do ( qwinsta /server:SRV-TL-TSD0608 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0608 %%i /V
qwinsta /server:SRV-TL-TSD0508 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0508 %%i /V
qwinsta /server:SRV-TL-TSD0408 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0408 %%i /V
qwinsta /server:SRV-TL-TSD0308 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0308 %%i /V
qwinsta /server:SRV-TL-TSD0108 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0108 %%i /V
)
else if (%hostname%) EQU "SRV-TL-TSD0108" do ( qwinsta /server:SRV-TL-TSD0608 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0608 %%i /V
qwinsta /server:SRV-TL-TSD0508 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0508 %%i /V
qwinsta /server:SRV-TL-TSD0408 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0408 %%i /V
qwinsta /server:SRV-TL-TSD0308 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0308 %%i /V
qwinsta /server:SRV-TL-TSD0208 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0208 %%i /V
))
Есть скрипт, суть - при входе на любой сервер после запуска скрипт получает имя сервера и соответственно выполняется нужное условие. Но работает не верно из-за синтаксических ошибок.
Прошу помощи.
@echo off
setlocal
if (%hostname%) EQU "SRV-TL-TSD0608" do ((qwinsta /server:SRV-TL-TSD0508 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0508 %%i /V
qwinsta /server:SRV-TL-TSD0408 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0408 %%i /V
qwinsta /server:SRV-TL-TSD0308 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0308 %%i /V
qwinsta /server:SRV-TL-TSD0208 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0208 %%i /V
qwinsta /server:SRV-TL-TSD0108 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0108 %%i /V
)
else if (%hostname%) EQU "SRV-TL-TSD0508" do ( qwinsta /server:SRV-TL-TSD0608 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0608 %%i /V
qwinsta /server:SRV-TL-TSD0408 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0408 %%i /V
qwinsta /server:SRV-TL-TSD0308 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0308 %%i /V
qwinsta /server:SRV-TL-TSD0208 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0208 %%i /V
qwinsta /server:SRV-TL-TSD0108 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0108 %%i /V
)
else if (%hostname%) EQU "SRV-TL-TSD0408" do ( qwinsta /server:SRV-TL-TSD0608 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0608 %%i /V
qwinsta /server:SRV-TL-TSD0508 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0508 %%i /V
qwinsta /server:SRV-TL-TSD0308 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0308 %%i /V
qwinsta /server:SRV-TL-TSD0208 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0208 %%i /V
qwinsta /server:SRV-TL-TSD0108 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0108 %%i /V
)
else if (%hostname%) EQU "SRV-TL-TSD0308" do ( qwinsta /server:SRV-TL-TSD0608 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0608 %%i /V
qwinsta /server:SRV-TL-TSD0508 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0508 %%i /V
qwinsta /server:SRV-TL-TSD0408 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0408 %%i /V
qwinsta /server:SRV-TL-TSD0208 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0208 %%i /V
qwinsta /server:SRV-TL-TSD0108 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0108 %%i /V
)
else if (%hostname%) EQU "SRV-TL-TSD0208" do ( qwinsta /server:SRV-TL-TSD0608 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0608 %%i /V
qwinsta /server:SRV-TL-TSD0508 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0508 %%i /V
qwinsta /server:SRV-TL-TSD0408 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0408 %%i /V
qwinsta /server:SRV-TL-TSD0308 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0308 %%i /V
qwinsta /server:SRV-TL-TSD0108 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0108 %%i /V
)
else if (%hostname%) EQU "SRV-TL-TSD0108" do ( qwinsta /server:SRV-TL-TSD0608 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0608 %%i /V
qwinsta /server:SRV-TL-TSD0508 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0508 %%i /V
qwinsta /server:SRV-TL-TSD0408 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0408 %%i /V
qwinsta /server:SRV-TL-TSD0308 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0308 %%i /V
qwinsta /server:SRV-TL-TSD0208 | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:SRV-TL-TSD0208 %%i /V
))