ActiveDirectoryからユーザー情報を取ってきて表示する際に独自の並び順で並べたいことがある。
例えば、役職などでは基本的に偉い順で並べたいのだが、単純に日本語で登録している場合は意図したとおりには並ばない。
幸い、Sortコマンドレットはソートプロパティに集計プロパティが指定できるのでそれを使うとこんな感じでカスタマイズが可能だ。
001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 | $dmAUsers = Get-QADGroupMember -Identity "Domain users" -Service "A.hoge.co.jp" $dmBUsers = Get-QADGroupMember -Identity "Domain users" -Service "B.hoge.co.jp" $dmAUsers + $dmBUsers | sort domain,department, @{expression={ switch ($_.title){ "本部長"{1;break} "部長"{2;break} "副部長"{3;break} "主任"{4;break} "係員"{5;break} default{6;break} } }} | select domain,department,title,name,email,samaccountname |
他ドメインの情報も必要だったのでPowerQuestの拡張コマンドを使ってユーザーを取得している。
ソートコマンドレットで並べたい順番に数字に置き換えてあげれば独自の並び順を実現できる。
Very energetic blog, I liked that bit. Will there be a part 2?
返信削除Feel free to surf to my homepage - Sessel mit Aufstehhilfe [http://marilynjtourgds.Tblog.Com]