やりたいこと
WindowsServerをActiveDirectoryと連携すると、初回ログイン時にC:\Usersにフォルダーができてサーバ内にユーザが作成されます。
同フォルダを見ればログイン済でサーバに存在するユーザは分かりますが、同じ情報をコマンドから取得する手順について説明します。
環境情報
- PSVersion : 5.1
- WindowsServer2016
やり方
PowerShellにて以下コマンドを押下する。
PS > Get-WmiObject Win32_SystemUsers | Select-String PartComponent
以下形式にてユーザ名及び連携しているドメインサーバが表示される。
\\xx\..,PartComponent="\\\\HOSTNAME\\root\\cimv2:Win32_UserAccount.Name=\"Hanako Yamada\",Domain=\"TESTAD\""
以下、補足です。
補足
WMI(Windows Management Instrumentation)オブジェクトにアクセスするコマンドである Get-WmiObjectを利用してユーザ情報を取得します。
同コマンドに引数Win32_SystemUsers
をつけてそのまま実行すると下記のようにデフォルトでできているユーザ含めて表示されます。
PS C:\Users\Administrator> Get-WmiObject Win32_SystemUsers __GENUS : 2 __CLASS : Win32_SystemUsers __SUPERCLASS : CIM_SystemComponent __DYNASTY : CIM_Component __RELPATH : Win32_SystemUsers.GroupComponent="\\\\xx\\root\\cimv2:Win32_ComputerSystem.Name=\"xx\"",PartComponent="\\\\xx\\root\\cimv2:Win32_UserAccount.Name=\"Administrator\",Domain=\"xx\"" __PROPERTY_COUNT : 2 __DERIVATION : {CIM_SystemComponent, CIM_Component} __SERVER : xx __NAMESPACE : root\cimv2 __PATH : \\xx\root\cimv2:Win32_SystemUsers.GroupComponent="\\\\xx\\root\\cimv2:Win32_ComputerSystem.Name=\"xx\"",PartComponent="\\\\xx\\root\\cimv2:Win32_UserAccount.Name=\"Administrator\",Domain=\"xx\"" GroupComponent : \\xx\root\cimv2:Win32_ComputerSystem.Name="xx" PartComponent : \\xx\root\cimv2:Win32_UserAccount.Name="Administrator",Domain="xx" PSComputerName : xx ...
表示行を絞るためにgrepライクに利用するSelect-Stringを挟んでいます。
以上、ご参考になれば幸いです。