awk でなんちゃって執事

「Rubyでなんちゃって執事」を作成した件 にインスパイヤーされて作ってみました。Ruby 版に合わせて簡単に書いています。

$ cat todo.txt
12:05 ボスとランチ
18:30 サンタが迎えにくる
20:00 飲み会 ××集合
21:30 再配達受け取り

awk スクリプトの中身は以下のようなものです。

$ cat todo.awk
#! /usr/bin/gawk -f
BEGIN {
    message[1] = "と書いてあります。いかがなされますか?";
    message[2] = "とのことですが、本日はお忙しいでしょうか?";
    message[3] = "とのことです。お忘れではない? それは失礼いたしました。";
    message[4] = "とのことですが、ぼっちゃま、寝ないでください、ぼっちゃま。";

    srand();
    todo_file = "todo.txt";
    while (getline < todo_file > 0) {
        print "「" $0 "」" message[int(rand() * length(message) + 1)];
    }
    close(todo_file);
}

実際に実行してみましょう。

$ gawk -f todo.awk
「12:05 ボスとランチ」とのことです。お忘れではない? それは失礼いたしました。
「18:30 サンタが迎えにくる」とのことですが、本日はお忙しいでしょうか?
「20:00 飲み会 ××集合」とのことですが、ぼっちゃま、寝ないでください、ぼっちゃま。
「21:30 再配達受け取り」とのことですが、本日はお忙しいでしょうか?

さて、元のネタは Otsune さんの Twitter での発言です。

IRC に投げれるようにするかどうか思案中ですが、gawk で IRC に投げることも可能です。

tag_gawk.pngtag_gawk.png