找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 112|回复: 8

请教,改个批处理语句,不用wmic,怎么改?

[复制链接]
发表于 2 小时前 | 显示全部楼层 |阅读模式

请教各位坛友:
不用wmic,批处理for /f "delims=" %%a in ('wmic userAccount where "Name='%userName%'" get SID /value') do call set "%%a"这句怎么改?

充分考虑PE下,和正常系统的情况,谢谢各位了!!
发表于 1 小时前 | 显示全部楼层
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set "SID="
  4. for /f "delims=" %%s in ('reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" /k 2^>nul') do (
  5.     for /f "delims=" %%u in ('reg query "%%s\ProfileImagePath" /ve 2^>nul') do (
  6.         for %%n in (%%u) do (
  7.             if /i "%%~nn"=="%username%" (
  8.                 set "SID=%%~nxs"
  9.                 goto :endgetsid
  10.             )
  11.         )
  12.     )
  13. )
  14. :endgetsid
  15. :: 此时 %SID% 就是你原来wmic获取的值
  16. echo SID=%SID%
复制代码
回复

使用道具 举报

发表于 1 小时前 | 显示全部楼层
  1. set "SID="
  2. for /f "delims=" %%k in ('reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" /k 2^>nul ^| findstr /r "^HKEY.*S-1-5-"') do (
  3.     reg query "%%k" /v ProfileImagePath 2>nul | find /i "%username%" >nul && set "SID=%%~nxk"
  4. )
复制代码



回复

使用道具 举报

 楼主| 发表于 1 小时前 | 显示全部楼层
谢谢,顺便请教一下,PE下是不是没有%SID%,或者说PE下的%SID%无意义。
回复

使用道具 举报

 楼主| 发表于 1 小时前 | 显示全部楼层
win11下,测试,无效
回复

使用道具 举报

发表于 1 小时前 | 显示全部楼层
这还真不懂,哪位大佬来讲讲
回复

使用道具 举报

发表于 半小时前 来自手机 | 显示全部楼层
whoami试试。
回复

使用道具 举报

发表于 24 分钟前 | 显示全部楼层
PE下获取SID没任何意义,如果有也都是S-1-5-18
回复

使用道具 举报

发表于 8 分钟前 | 显示全部楼层
3# 助 人 为 乐
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1|闽公网安备35020302032614号 )

GMT+8, 2026-4-27 17:54

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表