Board logo

标题: [已解决]请教如何提取用户所在的组? [打印本页]

作者: muya05     时间: 2006-12-24 11:15    标题: [已解决]请教如何提取用户所在的组?

如果用户属于管理员组则显示为administrators; 如果用户属于普通用户组则显示为users; 自己写了一行代码,可是不能运行,哪位大哥给挑挑错, 或者给个新思路也行,3Q! 代码如下(此代码有误!):
for /f %%g "tokens=2 delims=*" in ('net user %username%^|find ^"本地组成员^"') do echo %%g
[ Last edited by muya05 on 2006-12-24 at 07:23 PM ]

作者: namejm     时间: 2006-12-24 11:24
@echo off
net user %username%|find /i "*administrators">nul&&echo administrators||echo users
pause

作者: muya05     时间: 2006-12-24 11:47
RE namejm 大哥 3Q 都怪我提问的时候疏忽,如果只有两个组问题确实解决了,多个用兄的方法也能, 不过有点麻烦,期待更好的方法。 我的系统(WIN 2003 SP1)上的所有用户组: __VMWARE__ Administrators Backup Operators Distributed COM Users Guests HelpServicesGroup Network Configuration Operators Performance Log Users Performance Monitor Users Power Users Print Operators Remote Desktop Users Replicator TelnetClients Users

作者: lxmxn     时间: 2006-12-24 12:18
  命令行执行,获取当前登录用户所在的组。
for /f "tokens=2" %a in ('net user %username%^|find "本地"') do @echo %~a

作者: muya05     时间: 2006-12-24 22:40
RE lxmxn 大哥 3Q! 要是能把“*”(星号)去掉就更好了~

作者: ccwan     时间: 2006-12-24 22:57
for /f "tokens=2 delims=*" %a in ('net user %username%^|find "本地"') do @echo %~a

作者: muya05     时间: 2006-12-25 08:18
问题解决了 3Q! 真想知道dos联盟的高人是怎么练成的~~? 致敬! [ Last edited by muya05 on 2006-12-24 at 07:24 PM ]