(2)高效管理终端服务器中活动的会话

代码

@echo off
:again
color 1a
setlocal EnableDelayedExpansion
cls
echo.
echo.
echo --------------------请选择要执行的操作--------------------
echo ----------1.删除指定的会话
echo ----------2.断开指定的会话
echo ----------3.注销会话中的用户
echo ----------4.结束会话中指定的进程
echo ----------5.退出程序
echo.
echo.
set /p num=请选择要执行的操作:
if "!num!"=="1" (
cls
echo 以下为当前登陆到终端服务器中的所有会话:
query session
set /p sessionid=请输入被删除会话的ID:
echo.
reset session !sessionid!
goto again
)
if "!num!"=="2" (
cls
echo 以下为当前登陆到终端服务器中的所有会话:
query session
set /p sessionid=请输入被断开会话的ID:
echo.
tsdiscon !sessionid!
goto again
)
if "!num!"=="3" (
cls
echo 以下为当前登陆到终端服务器中的所有会话:
query session
set /p sessionid=请输入要注销用户的会话ID:
echo.
logoff !sessionid!
goto again
)
if "!num!"=="4" (
cls
echo 以下为当前登陆到终端服务器中的所有会话:
query session
set /p sessionid=请输入被结束进程所在会话的ID:
echo.
echo !sessionid!会话所有的进程信息如下:
query process /id:!sessionid!
set /p processid=请输入要结束进程的PID值:
echo.
tskill !processid! /id:!sessionid!
goto again
)
echo.
echo 你输入了!num!字符,程序将自动退出!
set num=
set sessionid=
set processid=

附录

color ?

设置默认的控制台前景和背景颜色。

COLOR [attr]

attr 指定控制台输出的颜色属性。

颜色属性由两个十六进制数字指定 – 第一个对应于背景,第二个对应于前景。每个数字可以为以下任何值:

0 = 黑色       8 = 灰色
1 = 蓝色       9 = 淡蓝色
2 = 绿色       A = 淡绿色
3 = 浅绿色     B = 淡浅绿色
4 = 红色       C = 淡红色
5 = 紫色       D = 淡紫色
6 = 黄色       E = 淡黄色
7 = 白色       F = 亮白色

如果没有给定任何参数,此命令会将颜色还原到 CMD.EXE 启动时的颜色。这个值来自当前控制台窗口、/T 命令行开关或 DefaultColor 注册表值。

如果尝试使用相同的前景和背景颜色来执行COLOR 命令,COLOR 命令会将 ERRORLEVEL 设置为 1。
示例: “COLOR fc” 在亮白色上产生淡红色

setlocal /?

开始批处理文件中环境改动的本地化操作。在执行 SETLOCAL 之后所做的环境改动只限于批处理文件。要还原原先的设置,必须执行 ENDLOCAL。达到批处理文件结尾时,对于该批处理文件的每个尚未执行的 SETLOCAL 命令,都会有一个隐含的 ENDLOCAL 被执行。

SETLOCAL

如果启用命令扩展,则 SETLOCAL 更改如下:

SETLOCAL 批命令现在可以接受可选参数:

ENABLEEXTENSIONS / DISABLEEXTENSIONS
    启用或禁用命令处理器扩展。这些
    参数比 CMD /E:ON 或 /E:OFF
    开关有优先权。请参阅 CMD /? 获取详细信息。
ENABLEDELAYEDEXPANSION / DISABLEDELAYEDEXPANSION
    启用或禁用延缓环境变量
    扩展。这些参数比 CMD
    /V:ON 或 /V:OFF 开关有优先权。请参阅 CMD /? 获取详细信息。

无论在 SETLOCAL 命令之前的设置是什么,这些修改会一直
生效,直到出现相应的 ENDLOCAL 命令。

在给定参数的情况下,SETLOCAL 命令将设置 ERRORLEVEL 值。如果给定两个有效参数中的一个,另一个未给定,则该值为零。
通过以下方法,你可以在批脚本中使用此项来确定扩展是否可用:

VERIFY OTHER 2>nul
SETLOCAL ENABLEEXTENSIONS
IF ERRORLEVEL 1 echo Unable to enable extensions

此方法之所以有效,是因为在 CMD.EXE 的旧版本上,SETLOCAL不设置 ERRORLEVEL 值。如果参数不正确,VERIFY 命令会将ERRORLEVEL 值初始化为非零值。

CLS

清除屏幕

echo.

中间没有空格,意思是创建一个空行

query session

列出当前登录到终端服务器中的所有会话。

关于TermService的资料

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值