簡體   English   中英

使用批處理文件根據配置文件名稱刪除用戶配置文件注冊表項

[英]Deleting user profile registry key based on profile name with Batch file

我正在嘗試編寫一個批處理腳本來刪除用戶配置文件的注冊表項。 用戶配置文件將始終具有相同的名稱,但每台計算機的密鑰都不同,並且每次創建用戶名時都會增加,即使前一個已被刪除。

我猜它需要某種類型的 for 循環來將 ProfileImagePath 的鍵值標識為 C:\Users\Username。

我知道通配符不起作用,所以 reg delete 'HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\S-1-5-21-*' /f 不起作用。

我知道一些 PS 腳本可以做到這一點,但我想把它保存在一個批處理文件中。

這是我建議的方法的單行示例(從 Windows 11 中刪除WMIC.exe時不會過時)。

@For /F "EOL= Delims=" %%G In ('%SystemRoot%\System32\reg.exe Query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" /S /F "C:\Users\Username" /D /E 2^>NUL ^| %SystemRoot%\System32\find.exe "S-1-5-21-"') Do @%SystemRoot%\System32\reg.exe Delete "%%G" /V "ProfileImagePath" /F 1>NUL 2>&1

請也考慮我的評論建議

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM