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

如何用C#分割adb输出并提取指定Hardware信息行

提取/proc/cpuinfo中指定Hardware行的C#实现方法

有两种实用方法可以实现需求,优先推荐第一种,效率更高:

方法一:通过adb命令直接过滤目标行

在adb命令里用grep直接过滤出包含Hardware : 的行,不用把整个/proc/cpuinfo内容传回本地,节省传输资源:

// 直接在设备端过滤目标行
string hardwareLine = ExecADB(string_, "-s " + array[0] + " shell cat /proc/cpuinfo | grep \"Hardware : \"");
TracerWrite("Cpu Hardware: ", Color.White); 
TracerWriteLine(hardwareLine.Trim(), Color.SeaGreen);

方法二:本地字符串处理提取目标行

如果需要保留完整的/proc/cpuinfo内容做其他处理,可以先拿到全部内容,再用C#字符串操作提取目标行:

string fullCpuInfo = ExecADB(string_, "-s " + array[0] + " shell cat /proc/cpuinfo");
// 按换行符分割所有行,过滤空行
string[] cpuLines = fullCpuInfo.Split(new[] { "\n", Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries);
// 查找以"Hardware : "开头的行
string targetHardwareLine = cpuLines.FirstOrDefault(line => line.StartsWith("Hardware : "));

TracerWrite("Cpu Hardware: ", Color.White); 
if (!string.IsNullOrEmpty(targetHardwareLine))
{
    TracerWriteLine(targetHardwareLine.Trim(), Color.SeaGreen);
}
else
{
    // 处理找不到目标行的情况
    TracerWriteLine("未找到Hardware信息", Color.Red);
}

注意:如果设备shell不支持grep,可以替换为findstr,不过安卓系统默认自带grep,一般无需替换。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 06:20:50