标题: [其他] 批处理如何获取登陆名然后执行相应操作? [打印本页]
作者: ph221 时间: 2009-1-9 09:43 标题: 批处理如何获取登陆名然后执行相应操作?
在domain中有个组group001
登陆后获取登陆名 如果该登录名在group001中就执行a.bat 如果不在就执行b.bat (a.bat 和b.bat在网络盘Y中)
[ 本帖最后由 ph221 于 2009-1-9 09:46 编辑 ]
作者: Batcher 时间: 2009-1-9 11:31
你说的登录名是这个不?
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\Test>echo %username%
Batcher
|
作者: ph221 时间: 2009-1-9 11:49
就是 登陆到域的用户名
作者: Batcher 时间: 2009-1-9 11:54 标题: 回复 3楼 的帖子
你要在域控制器上查看?还是在本机查看?
作者: ph221 时间: 2009-1-9 11:55
Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.
E:\Documents and Settings\warehouse.EL_XG>
我就是要warehouse这个
作者: ph221 时间: 2009-1-9 11:56
域上面 查看 然后判断 是不是在组group001里面 然后在判断 执行 a.bat 还是b.bat
作者: Batcher 时间: 2009-1-9 11:59
把这两个命令的结果贴出来看看复制代码
复制代码
作者: Batcher 时间: 2009-1-9 12:01 标题: 回复 6楼 的帖子
不知你说的“域上面”是指你的电脑登录域以后?或者你是网管,需要在域控制器上进行此操作?
作者: ph221 时间: 2009-1-9 12:04
可以显示出登录名 但是怎么判断 是不是在那个组里面呢
作者: Batcher 时间: 2009-1-9 12:06 标题: 回复 9楼 的帖子
第二个命令的结果贴出来看看?
作者: ph221 时间: 2009-1-9 12:11
已删除为了安全
[ 本帖最后由 ph221 于 2009-1-9 13:09 编辑 ]
作者: Batcher 时间: 2009-1-9 12:19
复制代码
作者: ph221 时间: 2009-1-9 12:22
通过批处理可以 判断 一个域用户在domain中哪个组里面吗
[ 本帖最后由 ph221 于 2009-1-9 12:24 编辑 ]
作者: Batcher 时间: 2009-1-9 13:12 标题: 回复 13楼 的帖子
12楼的结果有没有显示组?
作者: ph221 时间: 2009-1-9 14:01
没有哦 听人说是弄不出来了 用批处理
作者: Batcher 时间: 2009-1-9 14:39 标题: 回复 15楼 的帖子
12楼的命令结果不能贴出来看看么?
谁说批处理写不出来?
作者: ph221 时间: 2009-1-9 14:46
E:\Documents and Settings\sgs000095.EL_SG01>net config workstation
计算机名 \\HAPPY
计算机全名 happy.EL_SG01
用户名 SGS000095
工作站正运行于
NetbiosSmb (000000000000)
NetBT_Tcpip_{C398F681-CAF6-440F-A28B-003E9BB0B14E} (001EC9449074)
NetBT_Tcpip_{EDB82F11-A2A9-48C6-B6AF-0D66068AD13A} (005056C00001)
NetBT_Tcpip_{AD7966E7-1AEB-4055-B4D8-3EE1FB5A3EF4} (005056C00008)
软件版本 Windows 2002
工作站域 EL_SG01
工作站域 DNS 名称 EL_SG01
登录域 EL_SG01
COM 打开超时 (秒) 0
COM 发送计数 (字节) 16
COM 发送超时 (毫秒) 250
命令成功完成。
我这个账号加到了 2个组里面 我想看到那个组的名字 有一个组是allow
我是想通过命令 得到 我的账号sgs000095 和这个账号所在的组 allow
作者: ph221 时间: 2009-1-11 11:24 标题: 求助 文本调用
在Z盘有个a.txt 里面内容如下:谁能帮我写个批处理文件 有以下功能:- zhangsan
- lisi
- wangwu
- zhaoliu
复制代码
获取当前账户的用户名(域账号)
如果这个账号在a.txt里面(如zhangsan)
那么就执行 b.bat 如果不在就执行c.bat(b.bat 和c.bat都在z盘里面)
先谢谢大家了
[ 本帖最后由 ph221 于 2009-1-11 11:40 编辑 ]
作者: lorn1234 时间: 2009-1-11 14:15
- @echo off
- for /f "delims=" %%i in (a.bat) do set name=%%i&&call :s
-
- :s
- set a=%name%
- net user %a% >nul 2>nul && call b.bat ||call c.bat
复制代码
作者: shqf 时间: 2009-1-11 15:31
楼主还是没说清楚呵。人家的回贴你看了吗?BATCHER第7楼要你列出两个命令的结果,唉,你就是不列。叫人家怎么帮你呵?
BAT是很强大的,你这个问题根本不算什么问题,只是你没说清楚罢了。
作者: ph221 时间: 2009-1-11 16:09
都贴出来了 只是 他看完后 我删了
作者: pdanniel66 时间: 2011-3-12 19:42
(1) Use domain account that owns "domain admins" or "account operator"group privilege- net group /domain group001| find /i "login-username" && a.bat || b.bat
复制代码
(2) I use the localgroup to test the above script due to I haven't domain controler at home.- net localgroup users|find /i "poiuy123" > nul && echo poiuy123 account exist || echo poiuy123 acount not exist
复制代码
result as below :
poiuy123 account exist- net localgroup users|find /i "kkkkk123" > nul && echo kkkkk123 account exist || echo kkkkk123 acount not exist
复制代码
result as below :
kkkkk123 acount not exist
(3) above testing just for your reference.
[ 本帖最后由 pdanniel66 于 2011-3-12 19:51 编辑 ]
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |