Lze to zjistit pomocí nástroje netsh a vyfiltrování jeho výstupu. Protože se mi nepodařilo sestavit příkaz tak, aby se přímo netsh dotázal vzdáleného stroje (ví někdo jak na to?), použil jsem ještě psexec pro získání vzdálené příkazové řádky. Z prvního příkladu je vidět, že na vzdáleném stroji „pc023“ je přihlášen uživatel „Administrator“ z domény „OS“
C:\Temp>psexec \\pc023 cmd
PsExec v1.71 - Execute processes remotely
Copyright (C) 2001-2006 Mark Russinovich
Sysinternals - www.sysinternals.com
Microsoft Windows XP [Verze 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\Temp>netsh diag show computer /v | findstr /i "user"
UserName = OS\Administrator
Nebo pomocí PsLoggedon
C:\Temp>psloggedon \\pc012
PsLoggedon v1.34 - See who's logged on
Copyright (C) 2000-2010 Mark Russinovich
Sysinternals - www.sysinternals.com
Users logged on locally:
2.12.2011 12:12:47 OS\strachotao
Users logged on via resource shares:
6.12.2011 14:51:14 OS\STRACHOTAO
C:\Temp>
Simple and useful tool for creating timestamps in command line (batch). It need not fixed time format and is used current time zone.
Examples
for /f "tokens=1" %%a in ('timestamp.exe') do (
set timestamp=%%a
)
systeminfo > %timestamp%_%computername%.log
for /f "tokens=1-8 delims=- " %%a in ('timestamp.exe -d') do (
set year=%%a
set month=%%b
set day=%%c
set hour=%%d
set minute=%%e
set second=%%f
)
echo Now is %hour%:%minute%:%second% %month%-%day%-%year%
Download: timestamp.zip
Import-Module Lync
$LyncServer = "server1.domain.com"
$LogDatePartName = Get-Date -format 'yyyy_MM_dd'
$Log = "c:\scripts\"+$LogDatePartName+"_LyncEnabledUsers.csv"
get-csaduser | Where-Object {
$_.Enabled -ne $True -and
$_.WindowsEmailAddress -ne '' -and
$_.UserAccountControl -inotlike '*disabled*' -and
$_.DistinguishedName -inotlike '*impersonal*' -and
$_.IPPhone -ne ''
} | Select-Object UserPrincipalName | Export-Csv "$Log" -Delimiter ',' -NoTypeInformation
$LogSize = Get-ChildItem $Log
if ($LogSize.Length -ne '0') {
$UserFile = "$Log"
$MyData = Import-Csv $UserFile -Delimiter ','
ForEach ($item in $MyData){
$UserPrincipalName = $($item.UserPrincipalName)
Enable-CsUser $UserPrincipalName -RegistrarPool $LyncServer -SipAddressType EmailAddress
}
} else {
remove-item -path $Log -force
}