[英]How to get the error code (ErrorLevel) from PowerShell into Windows command prompt?
[英]How to get Windows version from command prompt or from PowerShell
以下命令将帮助您解决这个问题。 如果您需要更多信息,只需输入systeminfo :
systeminfo | findstr /B /C:"OS Name" /C:"OS Version"
wmic os get Caption,CSDVersion /value
ver
命令显示如下内容:
> ver
Microsoft Windows [Versión 10.0.17134.228]
但是在 PowerShell(或 Git Bash)中,您必须通过cmd
命令调用它:
> cmd /c ver
我在某处找到了它,PowerShell:
(Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion").ReleaseId
添加到@Bonifacio 的答案:
REG QUERY "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" | findstr ReleaseId
会更好,因为它只返回 ReleaseId 值,然后您可以将其通过管道传输到文件。 如果您要处理多个主机,则特别有用。
REG QUERY "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" | findstr ReleaseId > any_path\%COMPUTERNAME%_OS_Version.txt
使用系统信息,您只能获取具有该值的构建并转到 Google 以获取相应版本。
但是,一种简单的方法是在命令行上搜索注册表:
REG QUERY "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" | findstr REG_SZ
reg 查询方式建议所有输出有点垃圾。
REG QUERY "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" | findstr ReleaseId
Output:
ReleaseId REG_SZ 2009
对令牌使用 for 循环将输出干净的信息。
for /f "tokens=3" %i in ('REG QUERY "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" ^| findstr ReleaseId') do echo %i
Output:
2009
tokens=3
指的是原始输出中的第三个单词。
如果在 bat 文件中运行,则需要将%
加倍。
您可以通过将echo %i
替换为set build=%i
来将输出设置为变量
还要记住转义^
任何特殊字符。
最后查看HKLM\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion
以获取具有所需值的字符串。 您可能需要调整令牌计数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.