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

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

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

emx (13-12-2006 21:07): http://forum.ru-board.com/topic.cgi?forum=8&topic=19088#1  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

   

ooptimum



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

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


Часть 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 подобный скриптовый язык с исходниками

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

 
>>HOW -  TO:
Создается по материалам данного топа

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

 

Всего записей: 2898 | Зарегистр. 30-05-2002 | Отправлено: 08:55 13-12-2002 | Исправлено: FreemanRU, 17:29 11-12-2006
AlexSSS

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
PIL123
Я бы написал логон скрипт, который сбрасывал бы куда-нибудь на сервер в лог файл содержимое требуемых веток реестра, если они есть на этом компе.
Через какое-то время у тебя будет исчерпывающая информация об этих ветках для разных пользователей.

Всего записей: 747 | Зарегистр. 26-06-2004 | Отправлено: 15:12 01-04-2005
Jovanotti



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
PIL123
А  в шапочку  слабо   посмотреть   ?  
 
Исчерпывающий набор док и линков по теме (то что нужно начинающему скриптологу )  
http://www.networkdoc.ru/insop/whs.html
 
Смотрим раздел ...  РАБОТА  С РЕЕСТРОМ

Всего записей: 718 | Зарегистр. 22-12-2002 | Отправлено: 15:15 01-04-2005
metaframe

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
господа админы, подскажите можно ли ограничить вход пользователей на сервер 2003 по времени, то есть например "раньше 8 утра не входить"
или направте в нужную ветку!
 
Добавлено:
господа админы, подскажите можно ли ограничить вход пользователей на сервер 2003 по времени, то есть например "раньше 8 утра не входить"
или направте в нужную ветку!

Всего записей: 80 | Зарегистр. 26-11-2004 | Отправлено: 15:45 01-04-2005
IamDimulya



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
The Portable Script Center
Version 3.0, November 2004
http://download.microsoft.com/download/c/a/b/cabad822-b7eb-4815-928c-e59a9f2fafec/script_center.exe
 
Добавлено:
metaframe
1. Можно ограничить время входа в домен часами и днями недели.
Это означает, что вне указанного диапазона пользователя просто не пустят в систему.
2. Если речь идет о подключении к какому-либо конкретному ресурсу по сети или входе локально, то это возможно с помощью логин-скриптов, которые удобно назначать при помощи групповой политики (путь от пользователя) и при помощи скриптов на ресурсе (путь от ресурса).

Всего записей: 392 | Зарегистр. 01-09-2003 | Отправлено: 16:32 01-04-2005
PIL123



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
2 Jovanotti и AlexSSS
 
Спасибо большое, куда послали - сходил, ознакомился, однако там общие фразы, а мне бы что-нибудь по конкретнее, а?! Конкретно вот тут ( http://www.networkdoc.ru/files/insop/whs/read.html?whs-tr.html ) куда меня послал Jovanotti я, к сожалению, не нашёл решения вопроса.
 
 

Всего записей: 818 | Зарегистр. 25-06-2003 | Отправлено: 23:50 01-04-2005
AlexSSS

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
для WINDOWS XP можно сделать гораздо проще - воспользоваться коммандлайновой утилитой REG
REG QUERY /? - увидишь синтаксис
REG QUERY your_query_with_all_keys >c:\temp\reglog.txt - запишешь результат в файл

Всего записей: 747 | Зарегистр. 26-06-2004 | Отправлено: 12:47 02-04-2005 | Исправлено: AlexSSS, 13:01 02-04-2005
DimonVideo

Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Подскажите пожалуйста как написать скрипт который бы перезапускал apache при условии когда он забирает более 70 процентов ресурсов? На сервере стоит Debian Linux....

Всего записей: 48 | Зарегистр. 06-02-2004 | Отправлено: 16:51 02-04-2005
PIL123



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
AlexSSS
Jovanotti
AlexSSS
 
Уважаемые, спасибо большое, но мне бы более или менее готовое решение - в скриптах я 0. Операционные системы не только XP, встречаются и Windows 2000.

Всего записей: 818 | Зарегистр. 25-06-2003 | Отправлено: 10:25 04-04-2005
Jovanotti



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

Цитата:
он забирает более 70 процентов ресурсов

Ты  имеешь  в виду процессорное время ?
Постоянно  или периодически ?  
Чем это тебя напрягает     ??
 
Думаю лучше сходить в топ по Апачу.
 
 
Добавлено:
PIL123
Все мы  когда-то начинали  
Наша задача помочь  всем  желающим советом и линком
Непосредственно    решать проблему  должен   ты САМ
Если тебя жмет время, выход один ---   несколько бессонных ночей  напротив монитора...
Кто  сказал  что  быть Админом   легко  ?

Всего записей: 718 | Зарегистр. 22-12-2002 | Отправлено: 10:27 04-04-2005
AlexSSS

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
PIL123
> Операционные системы не только XP,
> встречаются и Windows 2000.
на 2000-м утилита REG тоже есть
вытащи с ее помощью их реестра нужную ветку, убедись, что там есть все что тебе надо, а после мы обьясним, как эту командную строку с REG засунуть в логонскрипт
 

Всего записей: 747 | Зарегистр. 26-06-2004 | Отправлено: 10:35 04-04-2005
AlexisZP

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Всм доброго времени суток
 
Можно ли как-нибудь с помощью WSH/VBS сравнить дату создания файла с заранее определенной датой?
Нужно для того, чтобы вывести список файлов, дата создания которых превышает, скажем, 01.04.2005г.
 
if ((oFile.DateCreated)> "01.04.2005") then
For Each oFile In oFiles           ' для всех файлов
    Text = Text & oFile.DateCreated & vbTab
    Text = Text & oFile.Name & vbTab
    Text = Text & FormatNumber(oFile.Size, 0) & vbTab
    Text = Text & vbCrLf
Next
MsgBox Text, vbOKOnly + vbInformation, Title
end if
 
проблема в том, как записать первую строчку, чтобы корректно отработал скрипт.
Спасибо!

Всего записей: 55 | Зарегистр. 20-05-2004 | Отправлено: 15:27 06-04-2005
AlexSSS

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
> if ((oFile.DateCreated)> "01.04.2005") then  
как вариант, можешь воспрользоваться функциями преобразования в дату, напр
 
DateSerial(year, month, day)
Returns a Variant of subtype Date for a specified year, month, and day.
 
IF objFile.DateCreated>=DateSerial(05, 04, 01) then

Всего записей: 747 | Зарегистр. 26-06-2004 | Отправлено: 16:01 06-04-2005
igor_andreev

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AlexisZP
Или как другой вариант в vbs есть функция сравнения дат DateDiff
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/vsfctdatediff.asp

Код:
 
if DateDiff("s", "01.04.2005", oFile.DateCreated)>0 then
 

Всего записей: 1704 | Зарегистр. 08-12-2004 | Отправлено: 18:20 06-04-2005
AlexisZP

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Спасибо отозвавшимся
 
Что по функции DateDiff, что по функции DateSerial выдается ошибка:
 
Ошибка: Требуется обьект: "
Код:       800А01А8
Источник: Ошибка выполнения Microsoft VBScript.
 
Нашел описание этих функций:
_http://www.webber.ru/articles/article.html?article_id=292
Вроде все соответствует по формату?
В чем может быть дело?

Всего записей: 55 | Зарегистр. 20-05-2004 | Отправлено: 11:27 07-04-2005
AlexSSS

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AlexisZP
>по функции DateSerial выдается ошибка
это ты видимо что-то в коде напутал. Я тоже проверил этот вариант- он нормально работает.
 
Единственное предупреждение - когда пользуешься подобным заданием даты ("01.04.2005"), надо быть стопроцентно уверенным, что на всех компах, на которых будет работать этот скрипт, в системе стоит формат даты DMY. Реально же вполне могут быть как YMD, так и MDY. Кроме того, вполне реально может стоять другой разделитель, напр "/".
В этих случаях будет либо вылетать ошибка, либо сравнение будет проходить неправильно.

Всего записей: 747 | Зарегистр. 26-06-2004 | Отправлено: 11:42 07-04-2005
GaDiNa



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
...так что - никто не в курсе как это сделать:
http://forum.ru-board.com/topic.cgi?forum=8&topic=1908&start=560#15
извините за UP.

Всего записей: 1551 | Зарегистр. 17-06-2003 | Отправлено: 11:56 07-04-2005
igor_andreev

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AlexisZP
Ну если по приведенному примеру судить,то ты строчки местами перепутал

Цитата:
if ((oFile.DateCreated)> "01.04.2005") then  
For Each oFile In oFiles           ' для всех файлов

Попробуй так

Код:
 
Set fso = CreateObject("Scripting.FileSystemObject")
Set oFiles= fso.GetFolder("D:\path\folder").Files
compare_date=false
 
For Each oFile In oFiles
  If DateDiff("s", "01.04.2005", oFile.DateCreated)>0 then  
    Text = Text & oFile.DateCreated & vbTab  
    Text = Text & oFile.Name & vbTab  
    Text = Text & FormatNumber(oFile.Size, 0) & vbTab  
    Text = Text & vbCrLf
    compare_date=true  
  End If
Next
 
If compare_date=true then
  MsgBox Text,, "Созданы после 01.04.2005"
Else
  MsgBox "Файлов, созданных после 01.04.2005 нет"
End If
 

 
Пардон , заперепрочитал твой предыдущий пост - тебе файлы старее 01.04.2005 нужны?, стало быть "01.04.2005" и oFile.DateCreated местами поменять надо в DateDiff

Всего записей: 1704 | Зарегистр. 08-12-2004 | Отправлено: 12:13 07-04-2005 | Исправлено: igor_andreev, 12:21 07-04-2005
AlexisZP

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вот полностью код.
Формат даты - такой-же, как и проверяется, т.е. 01.04.2005 разделитель - тоже точка.
====
Option Explicit
 
Dim my_var
my_var = Date
 
Dim WSHLocalNet, WSHShell
Set WSHLocalNet = WScript.CreateObject("WScript.Network")
Set WSHShell = WScript.CreateObject("WScript.Shell")
 
Dim Text, Title, oFile
Dim fso, oFolder, oFiles, wsh            
 
Text = "Список файлов в папке"  
Title = "FSS"
 
Set wsh = WScript.CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")
 
Set oFolder = fso.GetFolder("c:\2\get_files")  
Text = Text & oFolder & vbCrLf & vbCrLf
Text = Text & "Дата создания:"  & vbTab & vbTab & "Имя файла:   " & vbTab & vbTab & "Размер файла:" & vbCrLf
Set oFiles = oFolder.Files         ' получение списка файлов
'20
 
if DateDiff("s", "01.04.2005", oFile.DateCreated)>0 then
For Each oFile In oFiles            
    Text = Text & oFile.DateCreated & vbTab
    Text = Text & oFile.Name & vbTab
    Text = Text & FormatNumber(oFile.Size, 0) & vbTab
    Text = Text & vbCrLf
Next
MsgBox Text, vbOKOnly + vbInformation, Title
'проверка формата даты
MsgBox Date, vbOKOnly + vbInformation, Title
end if
====
Похоже я опять где-то в простых вещах туплю
 
Добавлено:
igor_andreev
Точно! Почему-то я думал что сначала нужно определить условие по дате, а потом уже добавлять инф-ю в мессадж.
 
Вопрос снят, всем
СПАСИБО

Всего записей: 55 | Зарегистр. 20-05-2004 | Отправлено: 12:20 07-04-2005
Uriu

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Уважаемые господа,
В скрипте (я привел конечно не все)
‘================
Set wbemServices = GetObject("winmgmts:\\")
 
Set wbemObjLog = wbemServices.InstancesOf("Win32_NTLogEvent")
 
 For Each i In wbemObjLog
         WScript.Echo "Time :  " & i.TimeGenerated  & VbCrLf '&_
                   
Next
‘==================
возвращается:   Time Generated:  20050408023935.000000+240
 
Подскажите пожалуйста, это что количество секунд с какого то момента времени (если это так то с какого момента), что после точки-000000+240.

Всего записей: 340 | Зарегистр. 25-11-2004 | Отправлено: 04:39 08-04-2005 | Исправлено: Uriu, 07:58 17-04-2005
AlexSSS

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Uriu
Time Generated:  20050408023935.000000+240  
на первый взгляд
год - 2005
месяц - 04
день - 08
 
дальше идет либо колическто секунд, либо, скорее всего, 02 часа 39 минут 35 секунд
000000+240 - бог его знает, чтобы не гадать надо просто посмотреть в документации формат возвращаемой TimeGenerated даты

Всего записей: 747 | Зарегистр. 26-06-2004 | Отправлено: 09:05 08-04-2005
   

Страницы: 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

Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » Автоматизация администрирования
emx (13-12-2006 21:07): http://forum.ru-board.com/topic.cgi?forum=8&topic=19088#1


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

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru