Мне нужно извлечь информацию, такую как серийный номер и продукт из HWInfo. Прямо сейчас я попробовал hwinfo --bios | grep 'Serial:' и я получаю больше, чем мне нужно. Сначала я хотел бы получить информацию после фактического Serial: и я понятия не имею, как передать это только. Вторая проблема заключается в том, что при извлечении «Serial» я получаю 3 различных Serial, если я посмотрю на полный отпечаток HWInfo, то Serial, который мне действительно нужен, находится в подразделе System Info: # 1, так что есть ли способ выполнить grep Серийный под этим только?

Спасибо

1 ответ1

1

У меня был тот же вопрос, и я создал его как первый шаг:

#! /usr/bin/perl

use strict;
use warnings;

my $filename = 'hwinfo_example.txt';
open(my $fh, '<:encoding(UTF-8)', $filename)
  or die "Could not open file '$filename' $!";
while (my $row = <$fh>) {
    chomp $row;
    if( index($row, '  Chassis Info') eq 0 ){
        #print "$row\n";
        while (my $row = <$fh>){
            chomp $row;
            if( (length($row) < 5) or (substr($row, 2, 1) ne ' ') ){
                last ;
            }
            if( index($row, '    Serial:') eq 0 ){
                print "$row\n";
            }
        }
    }
}

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .