2

次のような文字列があります。

33 00 4b 46 ff ff 03 10 30 t=25562

t=の後の最後の 5 桁にのみ関心があります。

正規表現を使用してこの数値を取得するにはどうすればよいですか? 試してみましたが、最初にt=grep t=.....を含むすべての文字も取得しました。これを削除したいですか?

その 5 桁の数字を見つけたら、これを で割りたいと思い1000ます。したがって、上記の場合、番号は25.562. これはgrepと正規表現で可能ですか?

ご協力いただきありがとうございます。

4

2 に答える 2

0

これで問題ありません。t=最後に値の形を取得するだけです。OPは、行の途中に追加の文字として存在する可能性がある投稿もしt=ますが、こんにちは、行の最後にあるものだけを取得したい.

echo '33 00 4b 46 ff ff t=22 03 10 30 t=25562' | awk '{split($NF,a,"=");print a[2]/1000}'
25.562

別のバリエーション

echo '33 00 4b 46 ff ff t=22 03 10 30 t=25562' | awk 'END {print $0/1000}' RS==
25.562
于 2013-11-08T06:39:26.087 に答える