hogeとはワイルドカードのようなものです。日々起こった、さまざまなこと −すなわちワイルドカード− を取り上げて日記を書く、という意味で名付けたのかというとそうでもありません。適当に決めたらこんな理由が浮かんできました。
07/05/2003 なmあzみだぶつ
■ [本] Stopping Spam
こんな本がオライリーから出てたとは.
■ [音楽] マリオ
俺の着メロがコンプされてら.…いやどっちかってーと俺がマリオの音楽コンプしたのか.どっちでもいいや.それにしても,このアンカーの「smbros」って狙ってんのかな? SMブラザーズ.
しかし魂斗羅は懐かしすぎる.
from 今日のなんでやねん
■ [ニュース] ハードウェア改造不要のXbox Linux起動方法が公開される
ありゃま,結局MSからは良い返答もらえなかったのね.当り前だけど.
■ [ソフト] UTF-8 decoding error
何やら ninix-aya の CVS版が,天気予報や bottle からの情報を喋ろうとすると UTF-8 decoding error: invalid data とか吐いて死亡するようになった.内部の文字コードが変わったとかかなぁ?
■ [小ネタ] 遊覧船がホットスポットになると?
どわぁ! 見覚えのある風景が….
■ [ソフト] tDiary
久しぶりに cvs up したら挙動が怪しくなってら.00default.rb がエラー出してたので古いやつに差し替えたら動いた.でもupdate画面の「登録」ボタンの横に空白のボタンが…これ何?
あ,よく見たらプレビューとか再編集の画面がなくなってら.うはー.やっぱ俺みたいなヘタレはリリース版使った方が無難かもなぁ.
■ [Bash][Tips] もしも…
Bash はプログラム言語の三つの制御構造を満たしている.三つの制御構造というのは
- 逐次実行
- 条件分岐
- 繰り返し構造
の三つだ.逐次実行とは上から順番に処理を実行していくというルールで,条件分岐は「もし○○が××なら△△を実行する」というような命令,繰り返し構造は「□□が▽▽を満たすようになるまで◎◎をし続けろ」というような命令のことだ.
で,今回のはこの条件分岐.これ Bash ではこれを if 〜 then 〜 else 〜 fi で表現する.簡単な例を見ると,次のような感じだ.
$ if [ "${HOGE}" = "hoge" ]; then echo '$HOGE is hoge'; else echo '$HOGE is not hoge'; fi
if [ "${HOGE}" = "hoge" ]
then
echo '$HOGE is hoge'
else
echo '$HOGE is not hoge'
fi
上記2つの例は全く同じものだけど,さてこれが何を意味するかというと,$HOGE に hoge という値が入っていた場合に echo '$HOGE is hoge' を実行し,そうでない場合は echo '$HOGE is not hoge' を実行する.また,else以下の文は省略可能で,いらないならいらないで書かなくても良い.
if [ "${HOGE}" = "hoge" ]
then
echo '$HOGE is hoge'
fi
条件を複数設けたい場合は elif 〜 then 〜 を繰り返す.
if [ "${HOGE}" = "hoge" ]
then
echo '$HOGE is hoge'
elif [ "${HOGE}" = "foo" ]
then
echo '$HOGE is foo'
elif [ "${HOGE}" = "bar" ]
then
echo '$HOGE is bar'
else
echo '$HOGE is not hoge'
fi
これで,$HOGE の値が hoge であれば,foo であれば,bar であれば…という感じに順番に条件を評価していくことができる.また,if文ではどれかの条件がヒットした段階でその if 〜 fi の文を抜ける.
ちなみにコマンドが返す値を評価して,結果に応じた処理をさせる,なんて場合にも使える.
$ cat > hoge.txt
foo
bar
baz
hoge
boo
huga
piyo
hemo
$ if grep hoge hoge.txt > /dev/null ; then echo "hoge in hoge.txt"; fi
hoge in hoge.txt
$ if grep buge hoge.txt > /dev/null ; then echo "hoge in hoge.txt"; fi
$
あと,意外と知られていない(使われてないだけ?)使い方として,こんなのもある.
$ HOGE=1
$ FOO=5
$ if (($HOGE < $FOO)); then echo "$FOO is bigger than $HOGE."; fi
5 is bigger than 1.
つまり (( )) によって算術評価を行い,結果を if に評価させる.
しかし if はほとんどの場合*1,&& や || で置き換え可能なので,そっちを使う方が楽かも知れない.下記のような書き方ができるからだ(シャレじゃないぞ).
$ [ "${HOGE}" = "hoge" ] && echo '$HOGE is hoge' || echo '$HOGE is not hoge'
$ grep hoge hoge.txt > /dev/null && echo "hoge in hoge.txt"
$ (($HOGE < $FOO)) && echo "$FOO is bigger than $HOGE"
*1 elifを使わない場合のこと.
07/05/2004 うがー
■ [日記] 暑い
ウチは立地的に西日が思いっきり入るので部屋の温度が上がる上がる.そのせいで夜になっても暑い.でも真夜中になると冷えてくるので下手に窓開けて寝たりなんかすると風邪ひくんだよね.
暑さのせいで眠りが浅かったのか全然寝足りず,午後まで寝てた.PBL の提出締切に危うく間に合わないところだった.あぶねー.確か五時までだったよな…と思って提出場所の事務室に行ったら「受付時間午後四時まで」って書いてあって一瞬血の気が引いたが,これはあくまで事務室の受付時間だったらしい.びびらすな!
■ [戯言] むー
そういや三年メタ郎メタラーが昨日の大学説明会で高校生のオーラにやられたと言ってたんだけど.
まぁ想像してみてくれたまえよ.
- 一年生が制服着たとする.違和感なし.
- 二年生が制服着たとする.まぁこんな高校生いてもおかしくはないかな.
- 三年生が制服着たとする.うーむまぁまだ大丈夫.多分いける.
- 四年生が制服着たとする.うーむやけに落ち着き払った高校生だな.
- 俺が学ラン着たとする.……どこの番カラだ.
何だか悲しくなってきたよ.
07/05/2006 んー
■ [日記] むー
CPU の温度でも測ってみようかと lm_sensors を入れてみたが,そもそもマザーが対応してないくさい罠.
悔しいので HD の温度だけでも測ることにした.
# emerge hddtemp wmhdplop # vi /etc/conf.d/hddtemp HDDTEMP_OPTS="/dev/hda /dev/hdc /dev/hdd" # /etc/init.d/hddtemp start && rc-update add hddtemp default $ vi .xinitrc wmhdplop --hddtemp &
それぞれ 49℃,54℃,53℃……やばくね?
□ shy [CVSのninix-ayaは本体の変更にsstp.pyが追いついていない状況です. ]
□ atzm [なるほど,そうだったんですか.確かに文字コード変換周りがコメントアウトされたりしてますね. ]
□ あかり [今更ですが。 ネタにして頂けるのはうれしいんですが、もすこししらべよーね。 該当ゲームのページに行けば、こだわりの..]
□ atzm [す,すみません.すごい気合いの入り様ですね…. ]