Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » Автоматизация администрирования. Часть 2

Модерирует : lynx, Crash_Master, dg, emx, ShriEkeR

ShriEkeR (23-05-2011 23:06): Автоматизация администрирования. Часть 3  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114

   

FreemanRU



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
 

                               Коллеги-администраторы  ....  


Часть 2я

Часть 1
Думаю каждый из вас сталкивался с необходимостью выполнять некие несложные рутинные операции, на котороые уходит много драгоценного времени.
 Например, создать определенную структуру каталогов для каждого пользователя домена, изменить некие параметры в профилях всех или части пользователей, изменить полномочия/владельца однотипных файлов в разных каталогах т.д.  
Я, как сисадмин, тоже не раз был вынужден делать все это.  Руками делать это тоскливо и муторно, как вы понимаете. Должен заметить, что по неким "религиозным" убеждениям я всегда старался избегать любых отношений с бейсиком и его производными. Еще мой отец учил меня не иметь с ним никаких дел. Буквально. А теперь я учу своего сына тому же. Но, тем не менее, полностью избежать этого, по всей видимости, невозможно, тем более, что бейсик от M$ сейчас уже далеко не та "лапша", которой он был изначально, а современный структурированный язык, нашедший множество применений. Похоже, что для меня в очередной раз настала пора выучить еще что-то. Знаете, как курильщик много раз безуспешно пытается бросить курить, так и я не раз пытался подступиться к изучению VBScript, но пока никак не одолел. Лень, знаете ли. А инструмент в делах административных был бы весьма пользительный, должен заметить, для быстрого написания всякого рода скриптов.

 
    Внимание   !  !  !  

  • Поскольку данный топ весьма не мал, не забывайте  использовать "версию для печати" для более удобного поиска по теме. А также МЕГА ПОИСКОВИК от NEPa

  • Дабы не раздувать топ,  примеры своих  скриптов  заключаем в тег  "more"

Консольные команды. Командный интерпретатор

Windows Script Host (WSH) &  VBScript  &  JScript


Вышеперечисленные буки можно  взять здесь

    ТOOLS :
  1. Autoit+readme.rus
  2. Scriptologic
  3. AutoMate
  4. KIXTART
  5. nnCron-Планировщик с поддержкой скриптового языка --  РЕКОМЕНДУЮ
  6. WGET, GREP, GETMAIL, BLAT for Windows замечательные консольные утилиты
  7. 4dos/4nt -- отличная замена стандартного коммандного интерпретатора  
  8. JudoScript - java подобный скриптовый язык с исходниками
  9. VBS2EXE - утилита для компиляции vbs и js скриптов в exe выдранная из пакета PrimalScript

    Дружественные темы :
  1. Автоматическая (unattended) установка Windows
  2. Интересные команды при работе с Linux
  3. Отличный сайт по скриптингу, и не только
  4. Использование KIX
  5. Использование WMI
  6. Программирование "удобняшек" на VBScript

 
Подробнее...
Создается по материалам данного топа

 
Надеюсь данная тема будет полезна для Вас.
 Предложения по реформированию шапки принимаю в ПМ Jovanotti

 

Всего записей: 3778 | Зарегистр. 16-07-2004 | Отправлено: 17:27 11-12-2006 | Исправлено: Smitis, 12:30 20-08-2008
rkhodjaev



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Nuts2002
 По поводу скрипта с прокси. Если его на автозапуск поставить, он отрубить прокси у пользователя?

Всего записей: 1002 | Зарегистр. 05-05-2006 | Отправлено: 15:26 24-08-2009
contrafack

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Nuts2002
ShafMAN
 
сохранил в файл *.js, запускаю, но выдает такую ошибку:
   
 
пробовал даже с IE6 браузером. везде такая ошибка.

Всего записей: 3171 | Зарегистр. 21-04-2008 | Отправлено: 15:41 24-08-2009
ShafMAN

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
contrafack
Может скопировал не полностю? Проверь скопированный код.
 
Добавлено:
rkhodjaev
Он сначала спросит хочет пользователь этого или нет И потом пользователь может самостоятельно через свойства обозревателя включеть прокси обратно. Проще наверное через политики запретить прокси, если на совсем надо.

Всего записей: 125 | Зарегистр. 09-01-2005 | Отправлено: 16:03 24-08-2009 | Исправлено: ShafMAN, 16:04 24-08-2009
contrafack

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
да, действительно не правильно скопировал ))))))))))) спасибо большое.  
 
только вот желательно отключить вторичный запрос. т.е. запустить - спросит Отключен - включить? после нажати ДА чтоб исчез, а не появился еще запрос, типа Включен - отключить? и надо нажать НЕТ, чтоб исчез запрос.  
 
можете подправить ?

Всего записей: 3171 | Зарегистр. 21-04-2008 | Отправлено: 16:13 24-08-2009
ShafMAN

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
contrafack

Цитата:
var WshShell=WScript.CreateObject("WScript.Shell");
var Title="Proxy Setting";
var Message="Прокси ";
var Key="HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\ProxyEnable";
var ON="ВКЛючен";
var OFF="ВЫКЛючен";
var ONON=". Включить?";
var OFFOFF=". Выключить?";
var ONOFF="";
var YNC=4;
var vbYes=6;
var vbNo=7;
var hz;
 
 
var proxyX=WshShell.RegRead(Key);
 
if (proxyX==1){proxyX=ON; ONOFF=OFFOFF;
 hz=WshShell.Popup (Message+proxyX+ONOFF,0,Title,YNC+64);
  if (hz==vbYes)
    {
    WshShell.RegWrite(Key,0,"REG_DWORD");
    }
    else if (hz==vbNo)
    {
    WScript.Quit();
    }}
 
else if (proxyX==0){proxyX=OFF; ONOFF=ONON;
 hz=WshShell.Popup (Message+proxyX+ONOFF,0,Title,YNC+64);
  if (hz==vbYes)
    {
    WshShell.RegWrite(Key,1,"REG_DWORD");
    }
    else if (hz==vbNo)
    {
    WScript.Quit();
    }}
 

Всего записей: 125 | Зарегистр. 09-01-2005 | Отправлено: 16:17 24-08-2009 | Исправлено: ShafMAN, 16:18 24-08-2009
contrafack

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ShafMAN
 

спасибо большое ! то, что надо !

Всего записей: 3171 | Зарегистр. 21-04-2008 | Отправлено: 16:36 24-08-2009
yazzi

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день подскажите как перевести кодировку есть скрипт который берет последнее событии по запросу от тригера и посылает на почту так вот проблема в том что русский текст присылается в кракозямлах посмотрите может кто что нибудь подскажет
 

Код:
 
Dim objArg
Dim FSO
Dim Temp
Dim Path
Dim Mag
Dim Id
Dim WshShell
Dim File
Dim WshNetwork
 
'получаем аргумены
Set objArg = WScript.Arguments
Temp = Split(objArg(0),"-",-1,1)
Mag = Temp(0)  ' переменная указывающая на название журнала
Id = Temp(1)   ' тип записи
Set objArg = Nothing
Set Temp = Nothing
Set WshShell = CreateObject("wscript.Shell")
Path = "d:\temp\event.txt"
' получаем событие
Temp = WshShell.Run("cmd /c cscript.exe c:\windows\system32\eventquery.vbs /fi " & Chr(34) & "Type eq " & Id & Chr(34) &" /r 1 /l " & Chr(34) & Mag & Chr(34) & " /v /fo table >>" & Path,1,true)
' читаем событие и удаляем файл
Set FSO = CreateObject("Scripting.FileSystemObject")
Set File = FSO.OpenTextFile(Path,1,False)
Temp = File.ReadAll
WScript.Echo Temp
File.Close
FSO.DeleteFile Path
'формируем письмо
'Set LogFile = fso.OpenTextFile("D:\temp\immSrvASNC.Log", 8, True)
Set WshNetwork = WScript.CreateObject("WScript.Network")
Set objMessage = CreateObject("CDO.Message")
objMessage.To = "my@domain.ru"
objMessage.From = WshNetwork.ComputerName & "@ourdomain.ru"
objMessage.Subject = "Automessage from " & WshNetwork.ComputerName
objMessage.TextBody = Temp
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = _
"domain.ru"
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
objMessage.Configuration.Fields.Update
objMessage.Send
If Err.Number <> 0 Then
  LogFile.WriteLine "Отправка письма невозможна по причине: " & Err.Description
  Err.Clear
End If
  Set objMessage = Nothing
  Set WshNetwork = Nothing
WScript.Echo "End"
 

Всего записей: 98 | Зарегистр. 14-08-2007 | Отправлено: 09:50 25-08-2009 | Исправлено: yazzi, 09:51 25-08-2009
rkhodjaev



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ShafMAN

Цитата:
Он сначала спросит хочет пользователь этого или нет  И потом пользователь может самостоятельно через свойства обозревателя включеть прокси обратно. Проще наверное через политики запретить прокси, если на совсем надо.

 
 По некоторым причинам невозможно отключить через ГПО. А можно этот скрипт в любом случае запускать, то есть у юзера не было возможности сказать - нет.

Всего записей: 1002 | Зарегистр. 05-05-2006 | Отправлено: 10:49 25-08-2009
YNY

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
yazzi

Цитата:
русский текст присылается в кракозямлах

 
попробуй после /c написать chcp 866 |, а вообще постарайся избежать копирования в файл, попробуй нечто в этом духе

Всего записей: 476 | Зарегистр. 18-05-2006 | Отправлено: 11:40 25-08-2009
bredonosec



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
вопрос есть, наверно простейший, но торможу..  
всем юзерам домена надо закинуть на десктоп по урлу.  
Тупо выслать мылом нельзя - тянет в аттач страницу с урла. Архивировать тож нельзя - по дефолту архиваторов нет, машина начнет задавать вопросы, юзеры начнут обрывать телефон. самораспаковывающимся тож нельзя - запрещено ехе-шники слать.
Остается только как-то скриптом или батником разослать всем.
Неясны 2 момента -  
1) список руками вводить долго и муторно, да и наверняка есть вариант как всем в директории кинуть
2) на десктоп надо именно залогиненному юзеру, или в профиль all users  
 
как это изобразить?

----------
Вопрос: 'Что человек курит?' как правило возникает не когда ты слышишь, как он дышит, а когда видишь, что он пишет
Пропеллер играет роль вентилятора, он останавливается -пилот потеет
Аськи нету.

Всего записей: 16131 | Зарегистр. 13-02-2003 | Отправлено: 12:28 25-08-2009
Attid



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
в профиль all users  

через доменные политики можно например

Всего записей: 77 | Зарегистр. 23-06-2003 | Отправлено: 15:15 25-08-2009
bredonosec



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
через доменные политики можно например  

положить файлик? а как?

Всего записей: 16131 | Зарегистр. 13-02-2003 | Отправлено: 15:27 25-08-2009
Attid



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
конфигурация компутера- конфигурация виндоус - сценарии - автозагрузка  
там делаешь скрипт с содержанием что-то вроде  
 
IF NOT EXIST "%ALLUSERSPROFILE%\рабочий стол\my.url" %SystemRoot%\System32\XCOPY.EXE "\\server\my.url" "%ALLUSERSPROFILE%\рабочий стол\my.url"
 
 
 
Добавлено:
кстати через политики всем в эксплорер можно в избранное добавить нужный урл или даже установить принудительно стартовой страницей

Всего записей: 77 | Зарегистр. 23-06-2003 | Отправлено: 15:42 25-08-2009
ADMINDM



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Просто добавьте в политики пользователя скрипт 1.vbs создающий ярлык
Dim WSHShell
Set WSHShell = WScript.CreateObject("WScript.Shell")
 
Dim MyShortcut, MyDesktop, DesktopPath
 
' Читаем путь к Рабочему столу
DesktopPath = WSHShell.SpecialFolders("Desktop")
 
' Создаем ярлык на Рабочем столе
Set MyShortcut = WSHShell.CreateShortcut(DesktopPath & _
"\ Программа.lnk")
 
' Задаем свойства объекта-ярлыка и сохраняем их
 
 MyShortcut.TargetPath = WSHShell.ExpandEnvironmentStrings("C:\Program Files\Windows NT\Accessories\wordpad.exe")
 MyShortcut.WorkingDirectory = WSHShell.ExpandEnvironmentStrings("C:\Program Files\Windows NT\Accessories")
 MyShortcut.WindowStyle = 4
 MyShortcut.IconLocation = _
 WSHShell.ExpandEnvironmentStrings("C:\Program Files\Windows NT\Accessories\wordpad.exe, 0")
 MyShortcut.Save
 
 
 

Всего записей: 365 | Зарегистр. 05-09-2006 | Отправлено: 15:56 25-08-2009 | Исправлено: ADMINDM, 16:00 25-08-2009
YURETS777



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Как при помощи VBS включить рабочую станцию Windows 2000 SP4 RU в Домен (Server 2003 SP2).
Пробовал так:

Код:
 
 Const ACCT_CREATE = 2
 Const ACCT_DELETE = 4
 Const WIN9X_UPGRADE = 16
 Const DOMAIN_JOIN_IF_JOINED = 32
 Const JOIN_UNSECURE = 64
 Const MACHINE_PASSWORD_PASSED = 128
 Const DEFERRED_SPN_SET = 256
 Const INSTALL_INVOCATION = 262144
 
 strDomain = "work.ru"
 strPassword = "123"
 strUser = "user1"
 strOU = "OU=comp,OU=Local,OU=Workstations,OU=DC001,DC=work,DC=ru"
 Set objNetwork = CreateObject("WScript.Network")
 strComputer = objNetwork.ComputerName
 
 Set objComputer = GetObject("winmgmts:{impersonationLevel=Impersonate}!\\" & _
    strComputer & "\root\cimv2:Win32_ComputerSystem.Name='" & _
        strComputer & "'")
 
 ReturnValue = objComputer.JoinDomainOrWorkGroup(strDomain, _
    strPassword, strDomain & "\" & strUser, strOU, _
        JOIN_DOMAIN + ACCT_CREATE)
 
 

 
Но под 2к этот скрипт не работает
Есть ли другие варианты ?

Всего записей: 2156 | Зарегистр. 29-04-2005 | Отправлено: 16:34 25-08-2009
rkhodjaev



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ShafMAN
Переделал таким образом, вроде работает:
 

Код:
var WshShell=WScript.CreateObject("WScript.Shell");  
var Title="Proxy Setting";  
var Message="Прокси ";  
var Key="HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\ProxyEnable";  
var ON="ВКЛючен";  
var OFF="ВЫКЛючен";  
var ONON=". Включить?";  
var OFFOFF=". Выключить?";  
var ONOFF="";  
var YNC=4;  
var vbYes=6;  
var vbNo=7;  
var hz;  
 
 
var proxyX=WshShell.RegRead(Key);  
 
if (proxyX==1){proxyX=ON; ONOFF=OFFOFF;  
    {  
    WshShell.RegWrite(Key,0,"REG_DWORD");  
    }}  

Всего записей: 1002 | Зарегистр. 05-05-2006 | Отправлено: 08:28 26-08-2009
north_crow

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
yazzi
вставь в скрипт такую строчку

Код:
objMessage.Bodypart.CharSet = "windows-1251"


Всего записей: 172 | Зарегистр. 04-12-2002 | Отправлено: 08:46 26-08-2009
ShafMAN

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
rkhodjaev
или так

Цитата:
 
var WshShell=WScript.CreateObject("WScript.Shell");
var Key="HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\ProxyEnable";
var proxyX=WshShell.RegRead(Key);
if (proxyX==1) WshShell.RegWrite(Key,0,"REG_DWORD");
 

Всего записей: 125 | Зарегистр. 09-01-2005 | Отправлено: 09:22 26-08-2009 | Исправлено: ShafMAN, 09:26 26-08-2009
yazzi

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
YNY
 Спасибо все заработало

Всего записей: 98 | Зарегистр. 14-08-2007 | Отправлено: 12:08 26-08-2009
rkhodjaev



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ShafMAN
 Спасибо большое.

Всего записей: 1002 | Зарегистр. 05-05-2006 | Отправлено: 12:34 26-08-2009
   

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114

Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » Автоматизация администрирования. Часть 2
ShriEkeR (23-05-2011 23:06): Автоматизация администрирования. Часть 3


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.Board
© Ru.Board 2000-2020

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru