[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 批处理提取字符串,并赋值给变量

命令:whoami /user 得到如下信息

Microsoft Windows [版本 10.0.19043.1052]
(c) Microsoft Corporation。保留所有权利。

C:\Users\Administrator>whoami /user

用户信息
----------------

用户名                 SID
====================== =============================================
mgaa0478\administrator S-1-5-21-1147887954-1578102877-3088787630-500

C:\Users\Administrator>



提取SID,只要S-1-5-21-1147887954-1578102877-3088787630-500
并复制给变量,

本人新手,不太会

回复 1# 04175884
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=" %%a in ('whoami /user^|find " S-"') do (
  4. set "str=%%a"
  5. set "str=!str:* S-=S-!"
  6. echo,!str!
  7. )
  8. pause
复制代码

TOP

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=" %%a in ('whoami /user^|find " S-"') do (set "c=%%a"&set "c=!c:* S-=S-!"&echo,!c!)
  4. pause
复制代码

TOP

回复 3# cmd1152


    感谢,已经OK

TOP

@echo off
setlocal enabledelayedexpansion
for /f "skip=6 tokens=2" %%s IN ('whoami /user') do echo,当前系统SID是:%%s&set name=%%s
echo,当前系统SID是:!name!
pause>nul

TOP

返回列表