Сергей Черевков писал(а):Хочу собрать информацию о рабочих станциях в текстовый файл, только не знаю как из скрипта писать в текстовый файл. Кто знает подскажите.
[...]
мне нужно-то только ИМЯ ЮЗЕРА, ИМЯ КОМПА, ВЕРСИЯ ОС и усе.
Могу ещё раз порекомендовать отменную утилиту
AutoIt. Например, у меня вполне прилично работает такая конструкция (мне нужно было собрать информацию о версиях новелловского клиента).
В контейнерном логин-скрипте прописано:
- Код: Выделить всё
#\\fs1\sys\public\AutoIt3.exe \\fs1\sys\public\verlog.aut3 "%CN".%LOGIN_CONTEXT
Содержимое скрипта
verlog.aut3 (осторожно, там длинные строчки):
- Код: Выделить всё
if @OSType=="WIN32_NT" Then
$ver = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Novell\NetWareWorkstation\CurrentVersion", "MajorVersion")
$ver = $ver & "." & RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Novell\NetWareWorkstation\CurrentVersion", "MinorVersion")
$ver = $ver & RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Novell\NetWareWorkstation\CurrentVersion", "BuildNumber")
Else
$ver = RegRead("HKEY_LOCAL_MACHINE\Network\Novell\System Config\Install\Client Version", "Major Version")
$ver = $ver & "." & RegRead("HKEY_LOCAL_MACHINE\Network\Novell\System Config\Install\Client Version", "Minor Version")
$ver = $ver & RegRead("HKEY_LOCAL_MACHINE\Network\Novell\System Config\Install\Client Version", "BuildNumber")
EndIf
$str = @MDAY & "-" & @MON & " " & @HOUR & ":" & @MIN & ":" & @SEC & @TAB
$str = $str & @ComputerName & @TAB & @UserName & @TAB & $CmdLine[1] & @TAB
$str = $str & @OSVersion & " " & @OSBuild & " " & @OSServicePack & @TAB & $ver
FileWriteLine ("\\fs1\SYS\PUBLIC\LOG\version.txt", $str)
На сервере
FS1 создана папка
SYS:PUBLIC\LOG, на которую на уровне контейнера даны права [RW], а фильтром у всех отобрано право [F]. Для первоначального создания лог-файла нужно, чтобы залогинился сам админ, потом остальные туда только дописывают; при этом сам файл (вместе с папкой) никому из простых пользователей не виден. Его содержимое имеет вид:
- Код: Выделить всё
04-03 15:31:12 ADMIN_WS Admininstrator Admin.IT.TREE WIN_2000 2195 Service Pack 4 4.83SP1
04-03 16:30:18 VASYA_WS Vasja.BUH.TREE WIN_98 2222 A 3.30
04-03 16:52:05 ADMIN-NEW super Super.IT.TREE WIN_XP 2600 Service Pack 2 4.83SP1
Формат лог-файла получается очень простой: поля разделены табуляциями, в результате чего можно импортировать для обработки куда угодно - хоть в Excel, хоть в базу. Сами поля в данном случае такие:
- дата/время;
- NetBIOS-имя компьютера;
- имя пользователя в Windows (может отсутствовать - см, например, вторую строчку для Win98);
- имя пользователя в NDS (c контекстом);
- версия ОС;
- нобер билда ОС;
- сервис-пак ОС;
- версия новелловского клиента.
Естественно, что при необходимости можно откорректировать скрипт так, чтобы писать только то, что надо именно Вам - но идея, я думаю, понятна. Решение абсолютно бесплатно и делает именно то, о чём был задан вопрос.