
HWInfo からシリアルや製品などの情報を抽出する必要があります。今試してみたところhwinfo --bios | grep 'Serial:'
、必要なものは以上です。まず、実際のシリアルの後の情報を取り出したいのですが、その情報だけをパイプする方法がわかりません。2 番目の問題は、「シリアル」を grep すると 3 つの異なるシリアルが取得されることです。HWInfo の完全な出力を見ると、実際に必要なシリアルは System Info: #1 のサブセクションにあります。その下のシリアルだけを grep する方法はありますか?
ありがとう
答え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";
}
}
}
}