chcp 1251
cls
@echo .
@echo В некоторых версиях Windows формат выдачи даты и времени другой,
@echo поэтому данный скрипт может работать совсем так как нам нужно.
@echo .
@set /p answer=Нажмите y для продолжения или n для отмены (y or n):
if %answer%==y goto :next
if %answer%==n goto :exit
if %answer%==н goto :next
if %answer%==т goto :exit
:
:По идее, подобным способом можно брать части любых переменных, суть в том что формат здесь такой:
:%DATE:~3,2%
:Первая цифра после :~ - это номер символа, с которого мы начинаем брать значение,
:вторая цифра это сколько символов захватывать.
:Таким образом получается что мы можем взять для своих нужд любую часть, любой доступной нам переменной среды Windows.
:
:next
set mytime=%TIME: =0%
:set mytime=%TIME: =0% заменяет вредный ведущий пробел на ноль
set mydate=%date: =0%
set hh=%mytime:~0,2%
set mm=%mytime:~3,2%
set ss=%mytime:~6,2%
set /A mm5=(%mm% + 1)
:при прибовлении мы опять можем потерять нолик в первые 10 мин поэтому опять его дорисовываем
if %mm5% GTR 9 goto :ten
if %mm5%==1 (set mmend=%mm5:1=01%)
if %mm5%==2 (set mmend=%mm5:2=02%)
if %mm5%==3 (set mmend=%mm5:3=03%)
if %mm5%==4 (set mmend=%mm5:4=04%)
if %mm5%==5 (set mmend=%mm5:5=05%)
if %mm5%==6 (set mmend=%mm5:6=06%)
if %mm5%==7 (set mmend=%mm5:7=07%)
if %mm5%==8 (set mmend=%mm5:8=08%)
if %mm5%==9 (set mmend=%mm5:9=09%)
goto :ten1
:ten
set mmend=%mm5%
:ten1
cls
@echo.
@set /p user=Введите имя учетной записи администратора:
cls
@echo .
@set /p pass=Введите новый пароль:
echo MsgBox ^"Новый пароль пользовател %user%: %pass%^" ^& vbNewLine ^& ^"Будет установлен в %hh%:%mmend%:%ss%^" >> "%homepath%\Мои документы\admin password.vbs"
at %hh%:%mmend%:%ss% cmd /C net user %user% %pass%
cls
@"%homepath%\Мои документы\admin password.vbs"
del "%homepath%\Мои документы\admin password.vbs"
cls
@echo .
@echo Для входа под новым поролем нажмите y (копьютер перезагрузится)
@set /p shut=для продлжения работы нажмите n (y or n):
if %shut%==y goto :next1
if %shut%==n goto :exit
if %shut%==н goto :next1
if %shut%==т goto :exit
:next1
shutdown /t 90 /r /f
:exit
exit
Закладки