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

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

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

ShriEkeR (23-05-2011 23:06): Автоматизация администрирования. Часть 3  Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

   

Oldster



Старик
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
<job id="Example">
    <runtime>
        <description>
Имя: multilang.wsf
Кодировка: Windows
Описание: Использование функции InputBox в JScript-сценарии
        </description>
    </runtime>
    <script language="VBScript">
  Function InputName  ' Описываем функцию на языке VBScript
  ' Вводим имя в диалоговом окне
  InputName = InputBox("Введите логин юзера:", "Окно ввода")
  End Function
 
Function GetString (ar())
        GetString = ar(0)
End Function
 
Function GetData (arg())
 
'    Set objUser = GetObject("LDAP://cn="& arg & ", cn=Users, dc=my_domain, dc=ru")
    Set objUser = GetObject("LDAP://server1/cn="& arg & ", cn=Users, dc=my_domain, dc=ru")
    Set objLastLogon = objUser.Get("lastLogon")
 
    Set objUser2 = GetObject("LDAP://server2/cn="& arg & ", cn=Users, dc=my_domain, dc=ru")
    Set objLastLogon2 = objUser2.Get("lastLogon")
    
    
    intLastLogonTime = objLastLogon.HighPart * (2^32) + objLastLogon.LowPart  
    intLastLogonTime2 = objLastLogon2.HighPart * (2^32) + objLastLogon2.LowPart
    
    If (intLastLogonTime2 < intLastLogonTime) Then  
        intLastLogonTime = intLastLogonTime / (60 * 10000000)
        intLastLogonTime = intLastLogonTime / 1440
    Else  
        intLastLogonTime = intLastLogonTime2 / (60 * 10000000)
        intLastLogonTime = intLastLogonTime / 1440
    End If
    
    GetData = intLastLogonTime + #1/1/1601#
 
End Function
    </script>
    <script language="JScript">
var name, temp, E, str;
var objConnection, objCommand, objCommand, objRecordSet; //Для юзеров    
 
var FullName,
        TelNumber,
        login,
        whenCreated,
        whenChanged,
        description,
        office,
        lastLogon,logonCount,
        EMail;
 
name = new String (InputName());  //Вызываем функцию InputName
name = name.toLowerCase();
         
 
objConnection = WScript.CreateObject("ADODB.Connection");  
objConnection.Open("Provider=ADsDSOObject;");  
objCommand = WScript.CreateObject("ADODB.Command");  
objCommand.ActiveConnection = objConnection  
objCommand.CommandText ="SELECT lastLogonTimestamp,logonCount,cn,sAMAccountName,userAccountControl,mail,telephoneNumber,physicalDeliveryOfficeName,whenCreated,whenChanged,description FROM 'LDAP://dc=my_domain,dc=ru' WHERE objectCategory='user'";
 
objRecordSet = objCommand.Execute;  
 
temp = 0;
 
var intLastLogonTime;
 
while (!objRecordSet.EOF){
        //Логин
        login = new String (objRecordSet.Fields("sAMAccountName"));
        login = login.toLowerCase();
         
        if (login == name){
                FullName = String (objRecordSet.Fields("cn"));
                TelNumber = String(objRecordSet.Fields("telephoneNumber"));
                EMail = String (objRecordSet.Fields("mail"));
                whenCreated = new Date (objRecordSet.Fields("whenCreated"));
                whenChanged = new Date (objRecordSet.Fields("whenChanged"));
                createTimeStamp = objRecordSet.Fields("userAccountControl").Value;
                description = new VBArray(objRecordSet.Fields("description").Value).toArray();
                office = String (objRecordSet.Fields("physicalDeliveryOfficeName"));
                logonCount = String (objRecordSet.Fields("logonCount"));
                lastLogon = new Date (GetData(FullName));
                                 
                temp = 1;
                break;
        }
       
   objRecordSet.MoveNext;  
}  
 
objConnection.Close;
 
if (temp == 0) WScript.Echo("Юзер не найден");
else {
    s = "Пользователь найден:\n" + login + " - " + FullName;
    if (createTimeStamp & 2) s += " (User - Disabled)\n";  
    else s += " (User - Enabled)\n";
 
    s += "Телефон: " + TelNumber + "\n";
    s += "Офис: " + office + "\n";
    s += "Почта: " + EMail + "\n";
    s += "Создан: " + whenCreated.toLocaleDateString() + " ("+whenCreated.toLocaleTimeString()+")" + "\n";
    s += "Изменен: " + whenChanged.toLocaleDateString() + " ("+whenChanged.toLocaleTimeString()+")" + "\n";
    s += "Кол-во входов: " + logonCount + "\n";
    s += "Последний вход: " + lastLogon.toLocaleDateString() + " ("+lastLogon.toLocaleTimeString()+")" + "\n";
//    s += "Последний вход: " + lastLogon.toLocaleDateString() + " ("+(lastLogon.getHours()+1)+":"+lastLogon.getMinutes()+":"+lastLogon.getSeconds()+")" + "\n";
    s += "Описание: " + description + "\n";
    
    WScript.Echo(s);
}
    </script>
</job>

Всего записей: 1367 | Зарегистр. 08-01-2003 | Отправлено: 08:47 08-04-2008
   

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум 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