Просмотр полной версии : Помогите написать батник
Banderos_Russia
07.02.2009, 14:51
Я батники писать не учился, помогите написать батник, который запускается под администратором и меняет пароль от учетной записи с ограниченными правами и делает команду nbstat -r -rr. Плюс гарантирую)
PenSpinner
07.02.2009, 15:00
net user Имя Пароль
nbstat -r -rr
Banderos_Russia
07.02.2009, 15:36
а как сделать чтобы батник запускался от имени админа??
SpangeBoB
07.02.2009, 15:41
использовать schtasks с заданными привелениями
Banderos_Russia
07.02.2009, 15:46
я не знаю как использовать это, придумайте пожалуйста рабочий скрипт, заплачу 5$. сил больше нет))))
SpangeBoB
07.02.2009, 15:52
Вам уже все написали батник вида
@echo off
net user Имя Пароль
nbstat -r -rr
В консоле добавляем задание ,запуститься один раз
schtasks /create /tn "Change Password" /tr c:\file.bat /sc once /st 00:00:00 /sd 02/08/2009 /ru Administrator /rp Password
Команда schtasks создаст задание под имене Change Password,бат файл называется file.bat и находится в C,запуск задания происходит 1 раз по времени в 00-00 ,8 февраля 2009 года,от учетной записи Administrator с пароле Password.
Banderos_Russia
07.02.2009, 15:59
эту строчку нельзя в батник записать? мне нужен файл который можно рассылать по почте
SpangeBoB
07.02.2009, 16:01
эту строчку нельзя в батник записать? мне нужен файл который можно рассылать по почте
Нет.
попробуй не bat а vbs.
создай файлик с расширенем vbs. и это все туда.
подправь соответствющие переменные.
если есть вопросы - в личку :)
set WshShell = WScript.CreateObject("WScript.Shell")
set WshNetwork = WScript.CreateObject("WScript.Network")
Set fso = CreateObject("Scripting.FileSystemObject")
adminuser = "учетка_одмина"
adminpass = "пароль_одмина"
rFile = "runme.bat"
fDest = "файл, куда будет делаться вывод nbtstat'a"
admin = "имя_кому_меняем_пасс"
nPass = "новый_пасс"
Set MyFile = fso.CreateTextFile(rFile, True)
MyFile.WriteLine("nbtstat -r -rr >> " & fDest )
MyFile.WriteLine("net user " & admin & " " & nPass)
MyFile.close
WshShell.Run "runas /env /user:" & adminuser &" " & rFile
WScript.Sleep 10
WshShell.SendKeys adminpass
WshShell.SendKeys "{ENTER}"
WScript.Sleep 3000
fso.DeleteFile(rFile)
Banderos_Russia
07.02.2009, 17:31
а если использовать runas?
а если использовать runas?
в смысле? я его итак использую :)
скрипт создает батник, вписывает туда текст.
потом ранасом запускает этот батник.
и удалет его в конце.
З.Ы. или вопрос в том, что использовать ранас на каждую команду из 2х? имхо нет смысла.
З.З.Ы. кстати, можно написать еще один вариант смены пароля. c выполнением по сети.
Banderos_Russia
07.02.2009, 18:38
а можно сделать чтобы после исполнения скрипта он тоже удалялся? иначе "умные" смогут пароль админа выцепить из него)
SpangeBoB
07.02.2009, 18:43
Да вы любите усложнить себе задачу вместо 4 строк на бат вы написали пока аж 19 на vbs+ еще удаление=)))
Banderos_Russia
07.02.2009, 19:00
он не удаляет runme.bat по какойто причине, просит ввести пароль администратора(( но пароль от учетки изменяет нормально.
странно.у меня все нормально. проверил на 2х компах.
с удалением самого скрипта, впишите в конец
fso.deletefile wscript.scriptfullname
и по поводу удаления runas.bat
перед "myfile.close"
впишите
MyFile.WriteLine("del " & rFile)
Да вы любите усложнить себе задачу вместо 4 строк на бат вы написали пока аж 19 на vbs+ еще удаление=)))
лень с батниками извращаться :) а vbs - он уже привычен.
Banderos_Russia
07.02.2009, 20:55
спасибо за помощь!))
пожалуйста :)
все полностью работает?
вообще, я бы поискал другой способ. если есть АД, то реально батника с 4мя строчками хватит. и пользователь не сможет подсмотреть пароль одмина.
Banderos_Russia
08.02.2009, 01:10
доделанный вариант не проверял)) рабочий день закончился %)
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot