查找字符串过滤系统信息输出

问题描述 投票:0回答:2

使用findstr过滤字符串

OS Version
:

C:\Windows\system32>systeminfo | findstr  "OS Version"
OS Name:                   Microsoft Windows 10 Pro
OS Version:                10.0.19044 N/A Build 19044
OS Manufacturer:           Microsoft Corporation
OS Configuration:          Standalone Workstation
OS Build Type:             Multiprocessor Free
BIOS Version:              American Megatrends Inc. 4.6.5, 2020/11/2

注意:

systeminfo | findstr  "OS Version:"
具有相同的结果。
为什么输出不能如下所示:

OS Version:                10.0.19044 N/A Build 19044

为什么输出包含许多与匹配字符串无关的其他行

OS Version

windows findstr
2个回答
1
投票

因为“OS Version”同时匹配“OS”和“Version”。 如果您想匹配整个字符串

"OS Version"
而不是任何一个单词,这就是您想要的:

systeminfo | findstr "OS\ Version"

这将匹配“操作系统版本”和“BIOS 版本”行。 所以过滤掉 BIO 版本的东西是这样的:

systeminfo | findstr "OS\ Version" | findstr /v BIOS


0
投票

尝试使用此方法提取几条信息并将其写入外部文件。

我现在的命令行是

SYSTEMINFO /S MyComputerName /FO CSV /NH >> sysinfo.csv

首先,我想要操作系统版本 我尝试过这个但不太有效...

SYSTEMINFO /S MyComputerName /FO CSV /NH | findstr "OS\ Name" | findstr /v BIOS >> sysinfo.csv

似乎仍在提取所有系统信息。 有什么建议/更正吗? 谢谢!

© www.soinside.com 2019 - 2024. All rights reserved.