如果我运行“winver”,它会在 GUI 框中显示:
Windows 10 (visual logo)
Microsoft Windows
Version 1903
(OS Build 18362.592)
如果我以“管理员”身份在命令行上运行“ver”,我会得到:
Microsoft Windows [Version 10.0.18362.592]
如果我以非“管理员身份”运行“ver”,我会得到:
The system cannot find message text for message number 0x2350 in the message file for Application.
那么,是这样的:
Windows 10,
Windows 1903,
Windows 10 1903,
Windows 18362.592,
Windows 10 18362.592,
Windows 10.0.18362.592, or
Windows 0x2350
?
我不知道“版本”是什么,尤其是在这种情况下,但最合适的版本似乎是“Windows 10 1903”,因为它告诉你它是 Windows 10,也是“主要发布”版本,它似乎是基于发布的年份(2019)和月份(03/March)。
如果不是“ver”命令的输出完全忽略了它,我甚至不会费心询问,而只是使用“Windows 10 1903”。我需要能够从命令行获取它(以自动化它)。
答案1
前两个命令正确且易于使用,并为您提供当前版本。版本 1903,内部版本 18362.592。
版本号为 4 位数字(例如 1903),
内部版本号为 5 位数字(18362),后跟子内部版本号
因此 winver 将为您提供 GUI 框。我用的是这个。
ver(以管理员身份运行)在命令行上会给出相同的答案。使用 ver non-Admin 应该会得到相同的输出。这使用不同的输出形式,这就是我使用 Winver 的原因。我认为(相当肯定)内部版本号表示版本,但您需要 Microsoft 公式来实现这一点。
这是一个相当新的版本。我在这里使用的是下一个版本
后续说明 - 我去查找了,但没有找到精确的公式,但你可以根据以下 Microsoft 文章建立一个表格
https://support.microsoft.com/en-us/help/4000825/windows-10-windows-server-2016-update-history
答案2
在所有这些变体中哪一个是 Windows 10 的正确版本格式?
正确的是(使用微软当前对操作系统版本的定义 - 这在过去是不同的)是1903
:
Windows 10
是操作系统的名称1903
是版本号(也称为发布 ID)18362
是主要版本号592
是次要版本号
以下是适用于 Windows 10 的列表:
如何从命令行检索版本号?
ver
在命令行上使用将显示类似的内容(我正在运行 Windows7):
F:\test>ver
Microsoft Windows [Version 6.1.7601]
因此它返回操作系统名称和版本号(而不是版本)。
要获取发布 ID,请参阅如何查找 Windows 10 的内部版本/版本。
找到一个命令行或 powershell 脚本来解决这个问题似乎相当困难(而且我没有 Windows 10 来测试并为您提供明确的解决方案)。
那么这些 Build Number 有何重要意义呢?
微软一直试图通过其版本号来显得“聪明”:
微软一直试图为大多数主要 Windows 版本的发布和制造选择具有重要意义的特殊数字。
- Windows 95 使用 4.00.950,
- Windows 98 使用 4.10.1998,
- Windows XP 版本定在 5.1.2600(参考黑客杂志),
- Windows Vista 四舍五入到 6.0.6000。
虽然微软工程师希望将 8888 用于 Windows 8,但 Vista 引入的新要求意味着任何版本的 Windows 的最终版本号都必须是 16 的倍数。这打乱了 Windows 8 可爱的编号方案,但它对于 Windows 10 来说几乎是完美的。
微软已将 10240 选为 Windows 10 的最终版本。乍一看,它可能看起来并不是特别有趣或与 Windows 10 无关,但深入挖掘一下,就会发现它是个数学魔法。在我们甚至还没有使用软盘的时代,计算机行业的千字节前缀表示 1024,因此 1024 千字节等于 1 兆字节。如今,业界将 1000 千字节称为 1 兆字节,但这并没有阻止微软回忆往事。10240 千字节相当于 10 兆字节(使用千字节表示 1024),如果您去掉末尾的零,只关注版本号的 1024 部分,您会觉得更有趣。