次の内容を含むファイルがあります。
foo-6-25.example.com:
1 Var. Speed System Board Normal Yes Normal ( 49)
--
foo-5-4.example.com:
1 Var. Speed System Board Normal Yes Normal ( 19)
--
foo-8-28.example.com:
1 Var. Speed System Board Normal Yes Normal ( 43)
--
foo-9-7.example.com:
1 Var. Speed System Board Normal Yes Normal ( 91)
--
foo-5-19.idmz.example.com:
1 Var. Speed System Board Normal Yes Normal ( 19)
--
foo-7-3.example.com:
1 Var. Speed System Board Normal Yes Normal ( 20)
次のように書式設定したいと思います。サーバー名、()
括弧内のファン速度
foo-6-25.example.com: ( 49)
foo-5-4.example.com: ( 19)
awkや他のツールを使用して使用する方法がわかりません。
ベストアンサー1
awk
解決策
$ awk '/:/{d=$1}/Speed/{printf"%-28s%s\n",d,substr($0,length($0)-4)}' file
foo-6-25.example.com: ( 49)
foo-5-4.example.com: ( 19)
foo-8-28.example.com: ( 43)
foo-9-7.example.com: ( 91)
foo-5-19.idmz.example.com: ( 19)
foo-7-3.example.com: ( 20)
$
awk
+column
ソリューション
列を動的にソートします。
$ awk '/:/{d=$1}/Speed/{print d,substr($0,length($0)-4)}' file|column -to' '
foo-6-25.example.com: ( 49)
foo-5-4.example.com: ( 19)
foo-8-28.example.com: ( 43)
foo-9-7.example.com: ( 91)
foo-5-19.idmz.example.com: ( 19)
foo-7-3.example.com: ( 20)
$