Hvis du er en sysadmin som jobber i et miljø som har tonnevis av domenekoblede datamaskiner, og vet hvem som bruker hvilken datamaskin som kan gå langt for å hjelpe deg med å gjøre jobben din bedre.
det er en kommandolinje som fungerer perfekt hvis du bare vil sjekke en håndfull datamaskiner fra tid til annen.
quser /server:computername
Du Kan til og med kjøre flere i en kommando for å spørre informasjonen fra flere datamaskiner, slik som dette.
quser /server:computer1 & quser /server:computer2 & quser /server:computer3
mens kommandoen er ekstremt nyttig, hjelper det ikke mye hvis Du vil bruke PowerShell.
for å sjekke om noen bruker en datamaskin på nettverket I PowerShell,
Get-CimInstance Win32_ComputerSystem -ComputerName $computername | Select -ExpandProperty username
men ulempen er at den ikke returnerer noe hvis noen logger inn på den datamaskinen via RDP. Hvis dette ikke plager deg, kan du integrere det i et skript som du kan kjøre for å trekke info fra flere datamaskiner.
du kan for eksempel trekke en datamaskinliste fra en BESTEMT OU i ANNONSEN din og sjekke om noen av dem har vært i bruk før du skyver ut oppdateringer som kan forstyrre andres arbeid.
$computers = Get-ADComputer -Filter * -SearchBase "OU=Desktops, OU=Computers, DC=domain_name, DC=local" | Sort-Object NameForEach ($computer in $computers) { if (Test-Connection $computer.name -Count 2 -Quiet) { $user = Get-CimInstance Win32_ComputerSystem -ComputerName $computername | Select -ExpandProperty username if ($user) { //do something usefule; } }}
skriptet trekker en liste over datamaskin fra EN OU, og for hver datamaskin i listen sjekker den for å se om den er online først. I så fall fortsetter det å sjekke om noen bruker den datamaskinen. Du kan deretter utføre andre oppgaver basert på ditt behov.