いずれ消え行く無駄な情報を、密やかに発信する装置。つまり日記。
byobuは、標準でロードアベレージやメモリ使用量などを表示することができますが、あくまでLinuxを対象に作成されているためFreeBSDではまったく情報を表示することができなくなります。そのため、自作のスクリプトを作成し表示を行うようにしました。
試しに、メモリの表示を行うスクリプト作成しました。FreeBSDはメモリの情報表示に関して、Linuxのように/procを読み込んで表示することはできません。sysctlを叩いて情報を取得します。
% more /usr/local/bin/mem #!/bin/sh a=`echo "4098*$(sysctl -n vm.stats.vm.v_free_count)/1024/1024" | bc` b=`echo "$(sysctl -n sysctl hw.physmem)/1024/1024" | bc` echo "${a}MB/${b}MB"
~/.byobu/profileの設定を変更します。
backtickが、どうやらバックグラウンドで表示を行うスクリプトと表示番号を定義している模様です。今回は、138と139という番号でスクリプトを作成しました。
hardstatus stringが、表示位置やレイアウトを設定している模様です。一番最後に138と139を追加しました。
backtick 138 5 5 mem backtick 139 5 5 sysctl -n vm.loadavg hardstatus string '%99`%{-}%{=r}%12` %100`%112`%=%117`%133`%130`%135`%102`%101`%129`%131`%127`%114`%115`%108`%134`%128`%125`%126`%113`%119`%116`%106`%104`%103`%105`%107`%136`%123`%137`%132`%120`%121` %138` %139`'
/usr/local/lib/byobu/profile以下に各情報を取得するためのシェルスクリプトが格納されています。手っ取り早く表示させるならば、ここのスクリプトを書き換えてしまうのが、もっとも手軽です。