中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-06-14 18:57
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [已解决]请教如何提取用户所在的组?
楼 主 [已解决]请教如何提取用户所在的组? 发表于 2006-12-24 11:15 ·  中国 陕西 延安 联通
初级用户
积分 58
发帖 22
注册 2006-12-07 00:25
UID 72763
性别 男
状态 离线
如果用户属于管理员组则显示为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 ]
2 发表于 2006-12-24 11:24 ·  中国 广东 电信
荣誉版主
★★★★
batch fan
积分 5,226
发帖 1,737
注册 2006-03-10 00:38
UID 51697
来自 成都
状态 离线

@echo off
net user %username%|find /i "*administrators">nul&&echo administrators||echo users
pause
尺有所短,寸有所长,学好CMD没商量。
考虑问题复杂化,解决问题简洁化。
3 发表于 2006-12-24 11:47 ·  中国 陕西 延安 联通
初级用户
积分 58
发帖 22
注册 2006-12-07 00:25
UID 72763
性别 男
状态 离线
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
4 发表于 2006-12-24 12:18 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
UID 59080
状态 离线

  命令行执行,获取当前登录用户所在的组。
for /f "tokens=2" %a in ('net user %username%^|find "本地"') do @echo %~a
5 发表于 2006-12-24 22:40 ·  中国 陕西 延安 联通
初级用户
积分 58
发帖 22
注册 2006-12-07 00:25
UID 72763
性别 男
状态 离线
RE lxmxn 大哥
3Q!
要是能把“*”(星号)去掉就更好了~
6 发表于 2006-12-24 22:57 ·  中国 河北 廊坊 三河市 移动
金牌会员
★★★★
积分 2,725
发帖 1,160
注册 2006-09-23 12:00
UID 63486
来自 河北廊坊
状态 离线
for /f "tokens=2 delims=*" %a in ('net user %username%^|find "本地"') do @echo %~a
三人行,必有吾师焉。 学然后知不足,教然后知困,然后能自强也。
7 发表于 2006-12-25 08:18 ·  中国 陕西 西安 联通
初级用户
积分 58
发帖 22
注册 2006-12-07 00:25
UID 72763
性别 男
状态 离线
问题解决了
3Q!
真想知道dos联盟的高人是怎么练成的~~?
致敬!

[ Last edited by muya05 on 2006-12-24 at 07:24 PM ]
论坛跳转: