ハイパーバイザーで実行されている仮想マシンの詳細を含むファイルがあります。いくつかのコマンドを実行し、出力をファイルにリダイレクトします。データは次の形式にすることができます。
Virtual Machine : OL6U5
ID : 0004fb00000600003da8ce6948c441bb
Status : Running
Memory : 65536
Uptime : 17835 Minutes
Server : MyOVS1.vmorld.com
Pool : HA-POOL
HA Mode: false
VCPU : 16
Type : Xen PVM
OS : Oracle Linux 6
Virtual Machine : OL6U6
ID : 0004fb00000600003da8ce6948c441bc
Status : Running
Memory : 65536
Uptime : 17565 Minutes
Server : MyOVS2.vmorld.com
Pool : NON-HA-POOL
HA Mode: false
VCPU : 16
Type : Xen PVM
OS : Oracle Linux 6
Virtual Machine : OL6U7
ID : 0004fb00000600003da8ce6948c441bd
Status : Running
Memory : 65536
Uptime : 17835 Minutes
Server : MyOVS1.vmorld.com
Pool : HA-POOL
HA Mode: false
VCPU : 16
Type : Xen PVM
OS : Oracle Linux 6
50を超えるVMを実行している一部のハイパーバイザーでは、この出力はハイパーバイザーによって異なります。上記のファイルは3つのVMのみを実行するハイパーバイザーの例にすぎないため、リダイレクトされたファイルには複数の(N台のVM)に関する情報が含まれると予想されます。
awk/sed またはシェルスクリプトを使用して、次の形式でこの詳細をインポートする必要があります。
Virtual_Machine ID Status Memory Uptime Server Pool HA VCPU Type OS
OL6U5 0004fb00000600003da8ce6948c441bb Running 65536 17835 MyOVS1.vmworld.com HA-POOL false 16 Xen PVM Oracle Linux 6
OL6U6 0004fb00000600003da8ce6948c441bc Running 65536 17565 MyOVS2.vmworld.com NON-HA-POOL false 16 Xen PVM Oracle Linux 6
OL6U5 0004fb00000600003da8ce6948c441bd Running 65536 17835 MyOVS1.vmworld.com HA-POOL false 16 Xen PVM Oracle Linux 6
ベストアンサー1
お持ちの場合rs
(再発明)ユーティリティ可能であれば、次のことができます。
rs -Tzc: < input.txt
これは、ダイナミック列幅まで、質問で指定されたものとまったく同じ出力形式を提供します。
-T
入力データの転置-z
各列の最大値に基づいて列サイズを適切に調整します。-c:
入力フィールド区切り記号としてコロンを使用する
これはすべてのサイズのテーブルに適用されます。たとえば、次のようになります。
$ echo "Name:Alice:Bob:Carol
Age:12:34:56
Eyecolour:Brown:Black:Blue" | rs -Tzc:
Name Age Eyecolour
Alice 12 Brown
Bob 34 Black
Carol 56 Blue
$
rs
OS X(およびその他のBSDシステム)でデフォルトで有効になっています。次のコマンドを使用してUbuntu(およびdebianシリーズ)にインストールできます。
sudo apt-get install rs