次の行を持つ変数があります。
iBMC=277
次のように一致させようとしています。
BMC="$(echo "$allnow" | grep iBMC=[0-9] | sed 's/iBMC=//g')"
これによりBMCが空になります。次のように見えますbash -x
。
++ grep 'iBMC=[0-9] '
++ sed s/iBMC=//g
+ BMC=
また、次の行など、いくつかの項目をさらに一致させる必要があります。
Name="$(echo "$allnow" | grep stringName= | sed 's/stringName=//g')"
しかし、結果も空です。これは$allnow
:
QQ1=0999999
QQ2=00aaaaa
RR=yes
GG=no
stringName=skolan8
sTitle=
iBMC=277
L3-cache="8 MB"
Minne="16 GB"
ベストアンサー1
grepを使用する必要はありません。 (おそらく情報量が多く、パフォーマンスの問題が原因である可能性がありますが、変数に格納されているデータではないようです)。
BMC="$(echo "${allnow}" | sed -e '/iBMC=[0-9]/!d' -e 's/iBMC=//;q' )"