首页 > 解决方案 > 用于从注册表中清除 RDP 连接历史记录的 Power shell 脚本

问题描述

我是 Powershell 的新手,但我一直停留在以下详细信息中详细说明的地方。

我想执行一个 PowerShell 脚本,它会从注册表中删除RDP 连接历史记录(MRU 编号),但不会删除所有历史记录,首先,它将逐个检查文件并要求批准是否删除然后删除过程将开始。删除过程完成后,它将再次重新启动服务器。

标签: powershellregistryrdp

解决方案




以下语法将循环遍历所有 10 个可能的条目,并要求您 Y/N 单独删除它们。请注意,Windows 最多只能保留 10 个条目。另请注意,Windows 在“\documents\default.rdp”中也保留了类似的数据,因此应在您的过程中删除此文件。

@echo off
SET count=0
 :AGAIN
 reg query "HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Default" /s | findstr "MRU%count%"
 if %errorlevel% EQU 0 (reg delete "HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Default" /v "MRU%count%") ELSE (goto ExitScript)
 set /a count+=1
 if %count% GEQ 10 GOTO ExitScript
 GOTO AGAIN
 :ExitScript

推荐阅读