从 bios 获取 windows 产品密钥
getting windows product key from bios
我正在尝试制作批处理脚本以从 BIOS 中提取 windows 产品密钥,以便计算机可以在生产环境中正确激活。
我是运行获取密钥的命令是wmic path SoftwareLicensingService get OA3xOriginalProductKey > text.txt
创建一个名为 text.txt 的文本文件,其中包含以下内容:
OA3xOriginalProductKey
xxxxx-xxxxx-xxxxx-xxxxx-xxxxx
(注意每行后面的一些随机空格)
问题是我只需要 xxxxx-xxxxx-xxxxx-xxxxx-xxxxx
部分,但我在这方面做得很糟糕。
我试过以下方法:
for /F "skip=10 delims=" %%i in (text.txt) do echo %%i
for /f "tokens=1*delims=:" %%G in ('findstr /n "^" text.txt') do if %%G equ 2 echo %%H
for /f "tokens=*" %%a in (text.txt) do call :processline %%a
:processline
echo line=%*
最后但并非最不重要的
for /F "tokens=2" %%i in (text.txt) do echo %%i %%j %%k
正如我所说,我过得很糟糕,而且我对 for /f 非常菜鸟 - 我不知道我哪里出错了,也不知道该怎么做。
您可以使用 for
获取命令的输出。
@echo off
For /f "tokens=2 delims=," %%a in ('wmic path SoftwareLicensingService get OA3xOriginalProductKey^,VLRenewalInterval /value /format:csv') do set key=%%a
echo %key%
使用另一个 wmic
标记(此处 VLRenewalInterval
)是摆脱丑陋的 wmic 行尾(所需标记没有行尾)的几种方法之一。
我正在尝试制作批处理脚本以从 BIOS 中提取 windows 产品密钥,以便计算机可以在生产环境中正确激活。
我是运行获取密钥的命令是wmic path SoftwareLicensingService get OA3xOriginalProductKey > text.txt
创建一个名为 text.txt 的文本文件,其中包含以下内容:
OA3xOriginalProductKey
xxxxx-xxxxx-xxxxx-xxxxx-xxxxx
(注意每行后面的一些随机空格)
问题是我只需要 xxxxx-xxxxx-xxxxx-xxxxx-xxxxx
部分,但我在这方面做得很糟糕。
我试过以下方法:
for /F "skip=10 delims=" %%i in (text.txt) do echo %%i
for /f "tokens=1*delims=:" %%G in ('findstr /n "^" text.txt') do if %%G equ 2 echo %%H
for /f "tokens=*" %%a in (text.txt) do call :processline %%a
:processline
echo line=%*
最后但并非最不重要的
for /F "tokens=2" %%i in (text.txt) do echo %%i %%j %%k
正如我所说,我过得很糟糕,而且我对 for /f 非常菜鸟 - 我不知道我哪里出错了,也不知道该怎么做。
您可以使用 for
获取命令的输出。
@echo off
For /f "tokens=2 delims=," %%a in ('wmic path SoftwareLicensingService get OA3xOriginalProductKey^,VLRenewalInterval /value /format:csv') do set key=%%a
echo %key%
使用另一个 wmic
标记(此处 VLRenewalInterval
)是摆脱丑陋的 wmic 行尾(所需标记没有行尾)的几种方法之一。