标题: [系统相关] [已解决]批处理如何注销除当前会话ID之外的所有会话? [打印本页]
作者: mms0536 时间: 2012-9-4 00:37 标题: [已解决]批处理如何注销除当前会话ID之外的所有会话?
本帖最后由 mms0536 于 2012-9-22 12:09 编辑
服务器操作系统,会有很多用户远程到系统,每个用户在不同电脑远程也会产生新的会话id
写这个批处理的目的就是双击之后注销除当前会话id之外的所有其他会话
下面是我写的
一步一步来的
注销使用回显代替了
echo off
setlocal enabledelayedexpansion
query session >1.txt
rem 这里是获取系统当前登录所有用户的信息
findstr ">" 1.txt >1111.txt
rem 这里是把当前用户隔离出来
for /f "tokens=3" %%i in (1111.txt) do set a=%%i & echo Being Used ID=!a!
这里是提取当前用户的id
echo kankan shi duo shao !a!
rem 这个纯粹是看看a是什么
for /l %%j in (1,1,3) do (if !a! neq %%j echo %%j+++!a!)
rem 循环三次,判断变量j和a是否相等,不相等就回显j的数值和a的数值
在红色字体部分,不管相不相等,都会执行后面的回显命令
执行结果
1+++1
2+++1
3+++1
感觉if判断没起作用,请各位大大看看是哪里出错了,百度了很久没找到相关资料,估计关键词没选好....
作者: apang 时间: 2012-9-4 07:14
- @echo off
- setlocal enabledelayedexpansion
- set a=Hello & echo "!a!"
- set a=Hello&echo "!a!"
- set "a=Hello" & echo "!a!"
- pause
复制代码
作者: mms0536 时间: 2012-9-4 11:50
apang 发表于 2012-9-4 07:14
感谢,已经好了,非常感谢
贴出可以的代码
修改了红色部分,再次感谢
echo off
setlocal enabledelayedexpansion
query session >1.txt
findstr ">" 1.txt >1111.txt
for /f "tokens=3" %%i in (1111.txt) do set "a=%%i" & echo Being Used ID=!a!
echo start for cell
echo kankan shi duo shao !a!
for /l %%j in (1,1,3) do (if not !a!==%%j echo %%j+++!a!)
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |