Ruby

Nagios のログの日付を変換しながら読むには

監視ソフトウェア Nagios のログファイル「/var/log/nagios/nagios.log」は日付フォーマット(=最初のカラム)がエポック秒になっています。これを見やすいように変換する簡単なスクリプト nagioslogview.rb を書いたので、以下に公開しておきます。同様に小さ…

3 分で出来る Twitter BOT

BOT とは Twitter の自動ポストプログラムのことです。主にキャラクターや偉人の名言集を定期的につぶやくものが多いようです。私はピーター・ドラッカーの BOT をフォローしているのですが、心に響く名言がぽつりぽつり表れてとても面白いです。(^^)ふと「…

Ruby で各種ファイルのバックアップを行う

Ubuntu 9.04 に引っ越した時、設定ファイルのコピーを忘れたのでそれ用のスクリプトを ruby で作成した。コピー対象のファイルやディレクトリのリストは入力ファイルから読み込むようにした。日/週単位とかログとか用途別に入力ファイルを用意してみようかな…

コマンドの標準出力/標準エラー/終了ステータスを保持したい

ruby スクリプトからコマンドを実行したいのだがコマンドの標準出力、標準エラー、終了ステータスはその都度保持しておきたい。「system/IO.popen/Open3.popen3 を使えばなんとかなるのでは…」と思っていたのだが、実現できなかったので自分で新たに Command…

バレンタインの朝に

何かが起こる!カモ? $ ruby -e 'require "time"; puts Time.parse("2009/2/14 08:31:31 JST").to_i'

which コマンドの実装

Python を習いはじめたともだちのところで which コマンドの実装というネタをやっていたので、Perl/Ruby に改宗させるべく(?)載せてみる。ただ、この汚いワンライナだと、洗脳は期待できないカモ。which コマンドの実装 - forest bookPerl 版 $ perl -e '@p …

rpm で情報をできるかぎり引き出す

お仕事で次のバージョンに向けてリストを作る必要があった。めんどくさ。 $ rpm -qa | xargs -i rpm -q --qf "`ruby -e 'open("| rpm --querytags", "r") do |f| while tag = f.gets do print "%{#{tag.chomp}} "; end end'`\n\n" {}

ソース行数を計算する

また開発に戻ることになりそう。とりあえず振られそうなとこの規模を測っておくことにする。 $ find . -name "*.c" -o -name "*.cpp" -o -name "*.h" | \ xargs -i wc -l {} | awk 'BEGIN { sum = 0 } { print; sum += $1 } END { print sum }'ruby でもやっ…