Полезные скрипты [vbs,bat] для сисадмина. Часть 1
Хочу поделиться скриптами, которые помогают мне в повседневной работе:
add_printer.vbs
‘Автоматическое добавление сетевых принтеров пользователям’
Set WshNetwork = WScript.CreateObject(«WScript.Network»)
WshNetwork.AddWindowsPrinterConnection «\\Servname\HP LJ M5025»
WshNetwork.AddWindowsPrinterConnection «\\Username\HP»
WScript.Echo «Все принтеры добавлены. Спасибо, что облегчили работу админу.»
wins_service.bat
‘скрипт для обслуживание базы данных wins. Выполнять раз в квартал или полгода’
net stop wins
jetpack %systemroot%\system32\wins\wins.mdb %systemroot%\system32\wins\tmp.mdb
net start wins
service.vbs
‘Скрипт для определения состояния службы
Set objShellApp = CreateObject(«Shell.Application»)
ServiceName = «NtLmSsp» ‘ имя сервиса
If objShellApp.IsServiceRunning(ServiceName) Then
MsgBox «Сервис » & ServiceName & » запущен!», vbInformation
Else
MsgBox «Сервис » & ServiceName & » НЕ запущен!», vbInformation
End If
login.vbs
‘пример определения пользователя, под которым произведен вход
‘если модифицировать — получится неплохой log`ер для отслеживания активности и проч
Set WshShell = CreateObject(«WScript.Shell»)
login = WshShell.ExpandEnvironmentStrings(«%USERNAME%»)
WScript.Echo login
upgrade.vbs
‘скрипт для копирования файлов из сети на ПК (на примере обновления баз McAfee)
SourceFolder = «\\server\Engine\» ‘ каталог, откуда копируем
DestFolder = «C:\Program Files\Common Files\Network Associates\Engine\» ‘ каталог куда копируем
LogFolder = «\\server\Log\» ‘ путь к лог файлу‘====================================================================
On Error Resume Next
Set FSO = CreateObject(«Scripting.FileSystemObject»)
Set WshNetwork = CreateObject(«WScript.Network»)
Set LogFile = FSO.OpenTextFile(LogFolder & «\mcafee_upg.log», 8, True)For Each File In FSO.GetFolder(SourceFolder).Files
TargetPath = DestFolder & File.Name
‘ если у файла есть атрибут ReadOnly, снимаем его
If FSO.FileExists(TargetPath) Then
Set TargetFile = FSO.GetFile(TargetPath)
If TargetFile.Attributes And 1 Then
TargetFile.Attributes = TargetFile.Attributes — 1
End If
End If
‘ если сетевая папка не доступна, пишем лог
SourcePath = SourceFolder & File.Name
If Not FSO.FileExists(SourcePath) Then
LogFile.WriteLine Now & «, компьютер — » & WshNetwork.ComputerName & «, пользователь — » & WshNetwork.UserName & «: путь » & SourceFolder & » нет доступа»
LogFile.Close
WScript.Quit
End If
‘ копируем файлы
FSO.CopyFile File.Path, DestFolder & File.Name, True
If Err.Number Then
LogFile.WriteLine Now & «, » & WshNetwork.ComputerName & «, » & WshNetwork.UserName & _
«: » & Err.Description & » » & File.Name
Err.Clear
End If
Next
If Err.Number Then Breakdown
LogFile.Close
WScript.Echo «Скрипт выполнен. Отчет находится на » & LogFolder
Добавить комментарий