presents by IT Consulting 109

VBScript – ローカルグループメンバー情報を取得

概要


以前、PoweShellを使用してローカルグループアカウントのメンバーを取得しました。

PowerShell – ローカルグループメンバー情報を取得

PowerShell – ローカルグループアカウント情報を取得

今回は、VBSとBATを使用してローカルグループアカウントからメンバー一覧を取得する方法について記載しています。

 

 

手順


以下の2つのファイルを作成します。

GroupMember.bat

@echo off
cscript GroupMember.vbs > GroupMemberList.txt
GroupMember.vbs
Set groups = GetObject("WinNT://.")
groups.Filter = Array("Group")
list = ""
For Each group In groups
 list = list & ":" & group.Name & vbCrLf
 target = GetMemberName( group.Name )
 if target = "" then
  list = list & "メンバー無し" & vbCrLf
 else
  list = list &  target
 end if
 list = list & vbCrLf
Next

Wscript.Echo list

Function GetMemberName( strGroup )

 Set users = GetObject("WinNT://.")
 ret = ""
 users.Filter = Array("User")
 For Each user In users
  For Each grp In user.Groups
   if strGroup = grp.Name then
    ret = ret & user.Name & vbCrLf
   end if
  Next
 Next
 
 GetMemberName = ret


End function 

作成したBATを実行します。
グループアカウントのメンバー一覧が「GroupMemberList.txt」に出力されます。

 

補足


PoweshellからBATを実行するには以下のコードを実行します。

cmd /c GroupMember.bat | Out-Null

Poweshellだけでグループメンバーを取得した方が簡単だと思いますが、VBSを利用したい場合の参考としてください。

この記事を書いた人
名前:TRUE's。 千葉県育ち、神奈川県在住のIT系フリーエンジニア。 IT系のナレッジサイトを不定期で更新中。 フォトグラファー兼エンジニアとして日々勤しんでいる。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です