标题: [系统相关] [已解决]批处理命令shutdown可否配置成注销所有非当前使用用户? [打印本页]
作者: beck1321 时间: 2011-9-6 14:33 标题: [已解决]批处理命令shutdown可否配置成注销所有非当前使用用户?
俺懂一点点 shutdown -l 是注销当前用户
当我想这样比如 这个系统有 a 、b 、c三个用户使用
我作为a用户进入系统后 我运行某个批处理 ,产生自动注销其他用户的效果(不管另外开了几个用户、不管是b也在还是c也在),除我自己正在使用的用户,其他都注销。
跪求大虾帮忙
作者: beck1321 时间: 2011-9-6 14:45
现在就是 在任务管理器里 注销其他用户 虽然也不是很麻烦 但是还是喜欢批处理
作者: lxzzr 时间: 2011-9-6 16:11
本帖最后由 lxzzr 于 2011-9-6 16:13 编辑
不用跪求- @echo off
- call :sub a
- rem 用户a
-
- call :sub b
- rem 用户b
-
- call :sub c
- rem 用户c
-
- pause
-
- :sub
- for /f "tokens=3 delims= " %%a in ('QUERY USER ^| Findstr /r /i "\<%1\>"') do LOGOFF %%a
- goto :eof
复制代码
作者: beck1321 时间: 2011-9-6 17:25
回复 3# lxzzr
确实把别的用户先注销了,但是不管我怎么搞都会把自己给注销了、、、
- @echo off
- call :sub Administrator
- rem a
-
- call :sub 123
- rem b
-
- call :sub 456
- rem c
-
- pause
-
- :sub
- for /f "tokens=3 delims= " %%a in ('QUERY USER ^| Findstr /r /i "\<%1\>"') do LOGOFF %%a
- goto :eof
复制代码
不晓得我搞错哪里了
sub rem 我不懂额
123、456是我创建的用户 Administrator是一直使用的用户
作者: beck1321 时间: 2011-9-6 17:27
我把 administrator 和 a 对调位置 还是把我正在使用的 用户(administrator)也注销了
作者: beck1321 时间: 2011-9-6 17:30
for /f "tokens=3 delims= " %%a in ('QUERY USER ^| Findstr /r /i "\<%1\>"') do LOGOFF %%a
是不是 这一行 哪个a要改成 用户名?
作者: lxzzr 时间: 2011-9-6 18:03
把
call :sub Administrator
rem a
去掉
作者: beck1321 时间: 2011-9-7 08:25
回复 7# lxzzr
斑竹~ 555 去掉后还是把自己也给注销了
而且这批处理要把其他用户名都sub rem一下?有无命令可以包括所有其他用户即不需要一个一个定义的?
作者: lxzzr 时间: 2011-9-7 08:56
本帖最后由 lxzzr 于 2011-9-7 09:24 编辑
rem 是注视语句,可以无视的。那代码的意思是你要注销那个用户就“call :sub 用户”。
还是把自己注销了,你当期的用户是哪个,CMD---ECHO %USERNAME%看下- @echo off
- for /f "skip=1 delims= " %%a in ('wmic useraccount get name') do call :sub "%%a"
-
- pause
- :sub
- if not %1 == "" if not %1 == "%username%" (
- for /f "tokens=3 delims= " %%i in ('QUERY USER ^| Findstr /r /i "\>%~1"') do (
- echo.LogOff user: %%i
- LOGOFF %%i
- )
- )
- goto :eof
复制代码
作者: Batcher 时间: 2018-7-31 14:35
- @echo off
- chcp 437 > nul
- REM Log off Disconnected sessions
- for /f "tokens=1,2" %%i in ('query user ^| findstr /c:" Disc "') do (
- echo logoff %%i
- logoff %%j
- )
- REM Log off Active sessions except for current session
- for /f "skip=1 tokens=1,3" %%i in ('query user ^| findstr /v /c:" Disc "') do (
- if /i "%%i" neq ">%username%" (
- echo logoff %%i
- logoff %%j
- )
- )
复制代码
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |