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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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

 

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

Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
BULLDOG
 
Я привел пример, который мне в свою очередь давали в прошлом.
Судя по ошибке ты забыл поменять на свои данные строку  
где описывается обращение к домену:  
DC=dom1,DC=dom2  - поменяй на свои данные,  
т.е. если у тебя домен ru.home.com, то должна быть строка - DC=ru,DC=home,DC=com
 
CommandText = "Select cn, name, distinguishedName, canonicalName, sAMAccountName"  
CommandText = CommandText + " from 'LDAP://DC=dom1,DC=dom2'"  
CommandText = CommandText + " where sAMAccountName='" + UserName + "'"  

Всего записей: 36 | Зарегистр. 03-09-2003 | Отправлено: 06:17 09-08-2007
BULLDOG



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alecsandrb
Ты меня опередил. Сам дукарк, забыл поменять DOM1,DOM2. Скрипт сработал без ошибок.
 
Добавлено:
alecsandrb
Etalon
 
Спасибо за помощь, я нашел что хотел!!!

Всего записей: 387 | Зарегистр. 29-08-2003 | Отправлено: 09:21 09-08-2007
Timka



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Message Box (MsgBox 2.1) выводит сообщение/вопрос (в т.ч. из файла!) с возможностью указания таймаута:
Цитата:
MsgBox 2.1 - Batch file messagebox utility by Doug Good
Freeware copyright 2002 Outside The Box Software (http://www.otbsw.com)
Usage: msgbox ("message") ["title"] [Icon] [Buttons] [Timeout]
       Always put message and title text in quotes!
       To load message from a text file use this syntax:
         msgbox @c:\msgfile.txt ["title"] [Icon] [Buttons] [Timeout]
Valid Icon Values:    1 = Information (i) (default)
                      2 = Warning     (!)
                      3 = Question    (?)
                      4 = Stop        (X)
Valid Button Values:  1 = OK (default)
                      2 = OK, CANCEL
                      3 = YES, NO
                      4 = YES, NO, CANCEL
                      5 = RETRY, CANCEL
                      6 = ABORT, RETRY, IGNORE
Return Values:        1 = OK button clicked
                      2 = CANCEL button clicked
                      3 = ABORT button clicked
                      4 = RETRY button clicked
                      5 = IGNORE button clicked
                      6 = YES button clicked
                      7 = NO button clicked
Timeout Values:       n = number of seconds to wait before
                      closing the message box.
                      0 = no timeout (default)

Есть ли похожая утилита (обязательно с таймаутом), понимающая текстовые константы (числа во всех параметрах уж больно не информативны)?
 
(с) Семён Семеныч Горбунков: У а Вас такая же, только с перламутровыми пуговицами, есть?

Всего записей: 470 | Зарегистр. 29-04-2003 | Отправлено: 22:19 10-08-2007 | Исправлено: Timka, 22:19 10-08-2007
royt

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите, как из командной строки (без GUI) изменить имя рабочей группы, в которую должна входить рабочая станция (Windows XP)?
Нужно указать именно рабочую группу, не домен.

Всего записей: 319 | Зарегистр. 18-08-2004 | Отправлено: 19:02 11-08-2007
vu1tur



Moderator-Saaber
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
royt
wmic computersystem where name="%computername%" call joindomainorworkgroup name="new_workgroup_name"

----------
I am free of all prejudice. I hate everyone equally.

Всего записей: 3690 | Зарегистр. 01-02-2003 | Отправлено: 19:37 11-08-2007
royt

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vu1tur
спасибо!
 
и еще вот такое решение нашел (подключает компьютер именно к рабочей группе, не к домену), это готовый текст bat-файла:Подробнее...

Всего записей: 319 | Зарегистр. 18-08-2004 | Отправлено: 20:04 11-08-2007 | Исправлено: royt, 20:05 11-08-2007
Locky_MS



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Привет. Подскажите почему на удаленном компьютере не определяется имя залогинившегося пользователя (выдает NULL). А если на удаленном компьютере залогинен администратор, то все нормально.
 

Код:
strComputer = "CompName"
 Set objWMIService = GetObject("winmgmts:" _
     & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
  Set colComputer = objWMIService.ExecQuery _
     ("Select * from Win32_ComputerSystem")
  For Each objComputer in colComputer
     Wscript.Echo "Logged-on user: " & objComputer.UserName
 Next  


Всего записей: 7 | Зарегистр. 06-12-2006 | Отправлено: 13:33 13-08-2007
yazzi

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Не подскажете почему может возникать следующая ошибка: "Объект не поддерживает это свойство или метод : ' objDocument.all.selSoftware' ". хотя все прописанои в форме и в скрипте.
 
strSoftware = objDocument.all.selSoftware.Value

Всего записей: 98 | Зарегистр. 14-08-2007 | Отправлено: 18:45 14-08-2007
mozers



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
yazzi
Спасибо за вопрос
А я все думал, думал с кем бы мне своей прогой поделиться
Те, кто пользуют только WSH и WMI в чистом виде прошу не напрягаться.
Прога (он же скрипт) показывает все методы, свойства и их значения объекта window (т.е. Вашей HTML странички с формами).
Короче - Object Browser.

Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 20:33 14-08-2007
YNY

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
gap5
вообще то чтоб узнать выполняется задание с ошибкой или нет то надо посм лог вып задания а чтоб выполнялось точно то надо указать правильную учетку и все будет работать
 
Добавлено:
Есть ли похожая утилита (обязательно с таймаутом),
WshShell.Popup(.....)
 
Добавлено:
yazzi где основной файл кот << Прога (он же скрипт) показывает все методы>> ???
 
 
Добавлено:
точней вопрос к mozers ).
 
а по поводу ошибки (слишком мало инфы в вопросе, но): есть прикол в том, что на VBScript и на JScript одни и те же примочки несколько по разному работают, а вообще то, если тебе надо получить из поля формы значение то:
<form id=frm1>
<input id=R  name="R" type=text maxLength=36 size=36>
...
</form>  
 
в (VB) скрипте:
 
frm1.R.value="Ivttr"
или
аа=frm1.R.value
 
Есть и еше одна возможность: неверный синтаксис, т.е. где нить лиший или не недостает чего нить
 
Добавлено:
и на кой те objDocument?) Конкретней надо быть, а ты в самую верхушку полез - вот и ошибки

Всего записей: 476 | Зарегистр. 18-05-2006 | Отправлено: 10:09 16-08-2007
mozers



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
YNY
Цитата:
где основной файл кот << Прога (он же скрипт) показывает все методы>> ???  

Запускаешь Object Browser.hta
Нажимешь Browse и находишь свой файл или test_page.htm (лежит для примера)
В левом фрейме появляется кнопочка window
Нажимаешь на нее, а потом на многочисленные кнопки object
Ну и т.д....
Вообще то для этого треда, обсуждаемая тема - оффтопик... Человек вопрос задал - ну я и встрял тут со своей приблудой...
Так, что - завязываем. Если есть интерес, то mozers(собака)mail.ru или ПМ.

Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 14:15 16-08-2007
rosalin



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ребята а как должен выглядеть скрипт  
выполняющий команду ipconfig /all
и отправляющий его на определенный адрес...
делаю для удаленного администрирования

Всего записей: 2588 | Зарегистр. 15-04-2003 | Отправлено: 11:11 17-08-2007
Vby



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
rosalin
На вскдику можно так:
ipconfig /all >c:\log.txt
copy c:\log.txt \\ip\share
del c:\log.txt  
 

----------
Ци ёсць што?

Всего записей: 781 | Зарегистр. 16-09-2004 | Отправлено: 11:19 17-08-2007
rosalin



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
нет не поняли на электронный адрес
что приписать надо  
 
Set objEmail = CreateObject("CDO.Message")  
 
objEmail.Bodypart.CharSet = "windows-1251"
'objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1  
'objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "username"  
'objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "userpwd"
objEmail.From = "admin1@fabrikam.com"  
objEmail.To = "admin1@fabrikam.com"  
objEmail.Subject = "Месага от админа"  
objEmail.Textbody = "Текст по русски"  
objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2  
objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.mail.ru"  
objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25  
objEmail.Configuration.Fields.Update  
objEmail.Send

Всего записей: 2588 | Зарегистр. 15-04-2003 | Отправлено: 11:35 17-08-2007
Vby



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
rosalin
Что-то типа того:  
Подробнее...

----------
Ци ёсць што?

Всего записей: 781 | Зарегистр. 16-09-2004 | Отправлено: 15:21 17-08-2007
valhalla



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

Всего записей: 2917 | Зарегистр. 30-10-2001 | Отправлено: 15:28 17-08-2007
rosalin



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

Всего записей: 2588 | Зарегистр. 15-04-2003 | Отправлено: 18:24 17-08-2007
SPV_Ed



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

Код:
@echo off
 
:: Имя сетевого подключения
set if_name="Подключение по локальной сети"
:: IP-адрес сети
set netaddr=192.168.0
:: Адрес хоста
set hostaddr=x
:: Маска подсети
set subnet_mask=255.255.255.0
:: Адрес хоста шлюза
set gwaddr=228
:: IP-адрес первичного сервера имен DNS
set dns1=85.233.130.67
:: IP-адрес вторичного сервера имен DNS
set dns2=85.233.144.10
:: Имя организации провайдера Интернет
set isp_name=Орбита-телеком (Выделенная линия)
:: Имя лог-файла
set logfile=%~n0.log
 
title %isp_name%
 
netsh interface ip set address %if_name% static %netaddr%.%hostaddr% %subnet_mask% %netaddr%.%gwaddr% 1 >>%logfile% 2<&1
if %errorlevel% EQU 0 (
echo Параметры сети установлены успешно.
) else (
echo Ошибка при установке параметров сети !
echo %date% %time% Ошибка при установке параметров сети ! >>%logfile%
goto :quit
)
 
netsh interface ip set dns %if_name% static %dns1% >>%logfile% 2<&1 && netsh interface ip add dns %if_name% %dns2% >>%logfile% 2<&1
if %errorlevel% EQU 0 (
echo Параметры DNS установлены успешно.
) else (
echo Ошибка при установке параметров DNS !
echo %date% %time% Ошибка при установке параметров DNS ! >>%logfile%
goto :quit
)
 
echo.
echo Текущий провайдер Интернет для вашего компьютера - %isp_name%.
 
: quit
echo.
pause

Либо поменять метрики у и-фейсов в RRAS:

Код:
@echo off
 
:: Шлюз спутникового соединения
set gw_sat=10.250.56.1
:: Шлюз наземного соединения ADSL
set gw_adsl=192.168.1.11
 
route print 0.0.0.0 |find "Основной шлюз" |find "%gw_sat%" >nul
if %errorlevel% EQU 0 (
netsh routing ip set persistentroute dest=0.0.0.0 mask=0.0.0.0 nhop=%gw_sat% name=Raduga metric=2
netsh routing ip set persistentroute dest=0.0.0.0 mask=0.0.0.0 nhop=%gw_adsl% name=Adsl metric=1
)
pause

Всего записей: 474 | Зарегистр. 20-06-2006 | Отправлено: 09:22 18-08-2007
rosalin



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vby
'objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1  
'objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "username"  
'objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "userpwd"  
objEmail.From = "admin1@fabrikam.com"  
objEmail.To = "admin1@fabrikam.com"  
objEmail.Subject = "Месага от админа"  
objEmail.Textbody = "Текст по русски"  
objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2  
objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.mail.ru"  
objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25  
objEmail.Configuration.Fields.Update  
objEmail.Send
 
не может отсылать через внешний smtp (напр yandex, gmail)
что подправить...
помогите плз

----------

Всего записей: 2588 | Зарегистр. 15-04-2003 | Отправлено: 09:34 20-08-2007
Vby



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

Цитата:
'objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1    
'objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "username"    
'objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "userpwd"  

 
Закоментированы строчки авторизации, убери знаки " ' " в начале строк, username - учетная запись на mail.ru, userpwd - пароль к ней, заполни.

----------
Ци ёсць што?

Всего записей: 781 | Зарегистр. 16-09-2004 | Отправлено: 10:34 20-08-2007
   

Страницы: 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.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru