web-dev-qa-db-ja.com

ユーザーのグループの出力リスト

Linuxでは簡単ですが、Windowsではこれまでに収集できたものほど簡単ではありません。私はちょっと私が望むことをするコマンドを見つけました:それは:

Net User username /domain

ただし、グループのリストを除くすべてのデータを削除したいと思います。 findstrが答えかもしれないと思いますが、これを使用してそれを行う方法がわかりません。基本的に、スクリプトは次のようなことをするだろうと思います(すばらしいコマンドがない限り):

Net User username /domain > temp.txt
findstr (or some other command) file.txt > groups.txt
del temp.txt

データの出力は次のようなリストになります。

group1; group2; group3

さて、これは複雑な方法で行うことができるので、前述したように、ユーザーのセキュリティグループのみを出力できるコマンドがあるとしたら、それは素晴らしいことです。

みんなありがとう!

注:スーパーユーザーにこれを尋ねましたが、このサイトの方が適切である可能性があることがわかりました。

2
Smitty

これがあなたが探しているタイプのものであるかどうかはわかりませんが、私はWindows Server 2003(AD DCではなくメンバーサーバー)でこれを行いました:

dsquery user -name "My Full Name" | dsget user -memberof | dsget group -samid

これにより、私がメンバーになっているグループのリストが1行ずつ出力されます(セミコロンで区切られていません)。

もっと凝ったものが必要な場合は、VBScriptを使用できます。その例が必要な場合はお知らせください。何かを見つけることができます。

2
David

これをLDAPクエリとして実行してから、netコマンドを使用することをお勧めします http://technet.Microsoft.com/en-us/library/aa996205(EXCHG.65).aspx

またはADSIがあります

http://msdn.Microsoft.com/en-us/library/windows/desktop/aa772170(v = vs.85).aspx

しかし、それはあなたが求めているもののOTTかもしれません

0
enterzero