製品

Percona

pt-align

コマンド

pt-align

目的

vmstat コマンドやiostat コマンドなどの出力内容を見やすくします

シナリオ

vmstat コマンドを使用して、CPUやメモリーの負荷率を表示することができますが、ウィンドウサイズが大きくないと非常に見づらい表示となってしまいます

[Et@localhost ~]$ vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 1  0      0  76272     76 359636    0    0     5     8   23   34  0  0 100  0  0
[Et@localhost ~]$

パイプを用いてvmstatの標準出力をpt-alignに引き渡すことで、ウィンドウサイズを変えることなく出力内容を見やすくすることが出来ます

結果

項目を区切るスペース幅などが自動調節され、表形式で整列されて表示されます

[Et@localhost ~]$ vmstat | pt-align
r b swpd  free buff  cache si so bi bo in cs us sy  id wa st
0 1    0 75868   76 359636  0  0  4  8 23 34  0  0 100  0  0
[Et@localhost ~]$

良い点

横に間延びしたステータス表示を自動的に整列して見やすくします

その他

ファイルを指定して、その内容をスペース区切りで分割して列幅を調整し、標準出力することも出来ます

下のように単語の長さがバラバラのテキストファイルも、pt-alignコマンドを使えば見やすく自動調整してくれます

[root@localhost Et]# cat test.txt
aaaa aaaaa a aaaaaaaaaaaaaa
bb bbbbbbbbbb bbb bbbb
ccccccccccc c ccccc ccccc
d d ddd dd dd ddd
ee    ee   ee  ee
[root@localhost Et]# pt-align test.txt
aaaa        aaaaa      a     aaaaaaaaaaaaaa
bb          bbbbbbbbbb bbb   bbbb
ccccccccccc c          ccccc ccccc
ee          ee         ee    ee
[root@localhost Et]#

※スペースの個数を等しくする必要があります
上の例では、スペースの個数が異なる”d”の行が省略されています

日本語のファイルの場合、上手く機能しません

[Et@localhost ~]$ cat test2.txt
ぺるこな太郎 東京都A区 20歳
つーる花子 北海道B市C町 12歳
ペルコナ・ツールキット アメリカ 12歳
[Et@localhost ~]$ pt-align test2.txt
ぺるこな太郎                東京都A区     20歳
つーる花子                   北海道B市C町 12歳
ペルコナ・ツールキット アメリカ      12歳
[Et@localhost ~]$