Полезные скрипты [vbs,bat] для сисадмина. Часть 1

Полезные скрипты [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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Закончите арифметическое действие * Лимит времени истёк. Пожалуйста, перезагрузите CAPTCHA.