You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用systeminfo筛选指定信息并导出为CSV文件?

问题根源

当你给systeminfo加上/FO CSV参数后,输出的每一行都是带双引号的键值对(例如"OS Name","Microsoft Windows 10 Pro"),但你用findstr匹配的是不带引号的"OS Name"这类字符串,完全匹配不到目标行,所以生成的CSV文件为空。

修复方案

方案1:适配CSV格式的findstr命令

在CMD环境中,双引号需要用两个双引号转义,所以把findstr的匹配字符串改成包含双引号的形式:

SYSTEMINFO /S MyComputerName /FO CSV /NH | findstr /c:"""Host Name""" /c:"""OS Name""" /c:"""OS Version""" /c:"""System Boot Time""" >> sysinfo.csv

这个命令会准确筛选出包含指定键名的CSV行,写入目标文件。

方案2:先筛选再转CSV

如果觉得转义双引号麻烦,可以先获取普通格式的筛选结果,再手动转换为CSV格式:

(
echo "Host Name","OS Name","OS Version","System Boot Time"
for /f "tokens=1,* delims=:" %%a in ('systeminfo /S MyComputerName ^| findstr /c:"Host Name" /c:"OS Name" /c:"OS Version" /c:"System Boot Time"') do (
    set "value=%%b"
    setlocal enabledelayedexpansion
    set "value=!value:~1!"
    echo "%%a","!value!"
    endlocal
)
) >> sysinfo.csv

该命令会先写入CSV表头,再将筛选后的每一行处理成标准的"键","值"格式。

方案3:用PowerShell更高效(推荐)

PowerShell对系统信息和CSV的支持更友好,命令逻辑更清晰:

Get-WmiObject Win32_OperatingSystem -ComputerName MyComputerName | 
    Select-Object CSName, Caption, Version, LastBootUpTime | 
    Export-Csv -Path "sysinfo.csv" -NoTypeInformation

如果需要提取其他字段,只需在Select-Object后添加对应的属性名称即可。

内容的提问来源于stack exchange,提问作者Dave

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 18:54:56