Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - Узнать ФИО последнего пользователя - который осуществлял вход в систему

Ответить
Настройки темы
PowerShell - Узнать ФИО последнего пользователя - который осуществлял вход в систему
it3 it3 вне форума

Пользователь


Сообщения: 94
Благодарности: 0

Профиль | Отправить PM | Цитировать


Добрый день!
Подскажите пожалуйста: необходимо реализовать следующее:
1. Есть список компьютеров (в excel'e): Диапазон - A2:A173;
2. Необходимо в B2:B173 выписать тех пользователей, которые осуществляли последний вход на этих компьютерах;
3. В C2:C173 необходимо вывести путь расположения этого пользователя в AD (organizational unit).

Отправлено: 12:47, 23-09-2019

 
it3 it3 вне форума Автор темы

Пользователь


Сообщения: 94
Благодарности: 0

Профиль | Отправить PM | Цитировать


Или же, можно сделать таким образом:
Код: Выделить весь код
Add-Content -Path "\\Server\Script\$env:USERNAME $env:COMPUTERNAME.txt" -Value "$(Get-Date)"
Создается txt документ, имя которого: "NameUser NamePC.txt", с содержимым (датой): "09/24/2019 13:00:00"

Как сделать так, чтобы содержимое каталога: "\\Server\Script\", формировалось в Excel-таблицу со столбцами: "Имя Пользователя", "Имя Компьютера", "Дата/Время включения"?

Отправлено: 11:37, 24-09-2019 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для DJ Mogarych

fascinating rhythm


Moderator


Сообщения: 6491
Благодарности: 1465

Профиль | Отправить PM | Цитировать


it3, у меня реализовано через логон-скрипт для всех компьютеров, выполняемый на уровне пользователя, который пишет информацию в учётку пользователя в AD.
Код: Выделить весь код
# write last logged-on comp name to "pager"
$Searcher = New-Object DirectoryServices.DirectorySearcher
$Searcher.Filter = "(&(objectCategory=person)(anr=$env:username))"
$Searcher.SearchRoot = 'LDAP://DC=domain,DC=ru'
$path = $Searcher.FindOne() |select -expand path
$user = [ADSI]"$path"
$user.Put("pager", "$env:computername")
# write logon time to "st"
$user.Put("st", "$((get-date).tostring())")
# write comp boot time to "otherPager"
$boottime = Get-WmiObject win32_operatingsystem
$boottime = $boottime.ConverttoDateTime($boottime.lastbootuptime)
$boottime = $boottime.toString("dd.MM.yyyy HH:mm:ss")
$user.Put("otherPager", "$boottime")
$user.SetInfo()
После этого можно отчёты формировать прямо из запросов в AD безо всяких экселей.

-------
Powershell 7.x | Powershell 5.1 | ffmpeg (docs)

Это сообщение посчитали полезным следующие участники:

Отправлено: 08:57, 25-09-2019 | #3

it3 it3 вне форума Автор темы

Пользователь


Сообщения: 94
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата DJ Mogarych:
it3, у меня реализовано через логон-скрипт для всех компьютеров, выполняемый на уровне пользователя, который пишет информацию в учётку пользователя в AD. »
Вариант!
Спасибо!

Отправлено: 09:51, 25-09-2019 | #4


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


DJ Mogarych, а обратный скрипт, на logoff, у Вас есть?

Снимается, для данного применения в нём нет необходимости.

Отправлено: 17:22, 25-09-2019 | #5

it3 it3 вне форума Автор темы

Пользователь


Сообщения: 94
Благодарности: 0

Профиль | Отправить PM | Цитировать


Вот скрипт на VBS:
Код: Выделить весь код
Set WshNetwork = WScript.CreateObject("WScript.Network")
Set objSysInfo = CreateObject("ADSystemInfo")
strUserDN = objSysInfo.UserName
Set objUser = GetObject("LDAP://" & strUserDN)
objUser.Put "Pager", WshNetwork.ComputerName
objUser.SetInfo
Хотелось бы реализовать чтобы версия ОС отображалась в поле: "homePhone", а дата/время входа в "facsimileTelephoneNumber".
Подсобите пожалуйста.

Отправлено: 13:33, 23-10-2019 | #6



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - Узнать ФИО последнего пользователя - который осуществлял вход в систему

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Загрузка - [решено] авто вход последнего пользователя отключить licher Microsoft Windows 10 2 11-09-2018 21:39
Блог - Как отключить автоматический вход последнего пользователя Windows 8 hb860 Microsoft Windows 8 и 8.1 34 14-01-2017 00:44
2008 R2 - Вход в систему как в Win 7 - выбор иконок пользователя. plvtor Windows Server 2008/2008 R2 1 27-11-2014 12:10
Загрузка - [решено] Удалил Имя последнего входившего пользователя в систему А_н_д_р_ей Microsoft Windows 7 4 02-01-2011 11:24
Загрузка - Не могу задать пароль на вход пользователя в систему. roniro Microsoft Windows 2000/XP 3 21-08-2009 11:08




 
Переход