hogeとはワイルドカードのようなものです。日々起こった、さまざまなこと −すなわちワイルドカード− を取り上げて日記を書く、という意味で名付けたのかというとそうでもありません。適当に決めたらこんな理由が浮かんできました。
06/28/2003 脳 [長年日記]
■ [Gentoo][日記] GentooJP
kochi の事件が引金になってか,GentooJP の ML が活発になってるみたいで,俺としては好ましい傾向だと思う.俺は IRC への引き籠りが嫌いなので.IRC の有用性を否定したりはしないけど,なーんか IRC って閉鎖的な印象が拭えないんだよね.まぁこれは IRC に限った話じゃないんだけどさ.
■ [日記] bash
なんで Bash の Tips なんか書くのかって? そりゃ決まってます.Bash が広くプログラミング言語として認識されてないということが俺的に許せんからです.ちょっとしたことならなんでも Bash で実現できます.それにログインシェルが Bash な人たちにとっては,Bash を理解することが Linux ライフを快適に送ることへの最大の近道だと思うからですな.
ん? Zsh? んなハイカラなもんは知らん.
■ [Gentoo][日記] depend
なんかいつの間にか /var/cache/edb/world が破壊されてたので regenworld で復旧させる.その後 emerge --deep -upv world してみたら,blackdown-jdkやらcupsやら,何か色々いらんものがインストールされようとしてるではないか.該当ebuildを調べてみてもdependしてる様子はない.一体どこでこんなこんなもんが引っかかったのか.思いっきり [ebuild N ] ってマークが付いてるからdepend以外で入ることはあり得ないはずなんだが….
第一,lprngが既に入ってるのにcupsが入るわけねーだろよ.virtualsまで逝ってるのか? 今日は帰る前に emerge -e world かな….
■ [Gentoo][Tips] インストールされているパッケージの(バージョンを含めた)リストを作る
emerge -ep world | sed -e "s/^[^\[].*//" -e "s/^\[ebuild N \] /=/"
結果をそのままemergeに食わせることが可能.何かの理由でアップデートを行ないたくないけど再コンパイルしたいって時に有効.あんまりないだろうけど.
■ [日記] 白
突然ですが,俺は背景色が白のページが好きではないです.いつもブラウザは最大化してあるので,背景が白いとものすごく目に痛いのです.かと言って黒とか赤とか,原色系は見づらいことこの上ないのでこのサイトの色は「俺的に許せる範囲の背景色」にしてます.白はイカンです.
■ [ニュース] 「タトゥー」がTV生出演中姿消す 視聴者から抗議殺到
まぁどうせ1〜2年も経ちゃいなくなる人らなんだから好きにさせときなさい.むしろタトゥーの方が大衆に踊らされてるんだから.そんなタトゥーにかもんたつおのこの一曲を.
人気もあった テレビにも出た だけど世間は冷たいものさ
人気がなくなりゃ 見向きもしない
えり まき とかげ
■ [Bash][Tips] 変数いじり(2)
変換して欲しくないところまで変換されてしまう,なんてことが生じた場合,// の代わりに /, #, % を使うと便利だ.使い方を例示すると,例えばこんなことになる.
$ echo "${HOGE}"
washi ga otoko-juku jukucho "edajima heihachi" de aru!!!
$ echo "${HOGE/ /}"
washiga otoko-juku jukucho "edajima heihachi" de aru!!!
$ echo "${HOGE#w}"
ashi ga otoko-juku jukucho "edajima heihachi" de aru!!!
$ echo "${HOGE#a}"
washi ga otoko-juku jukucho "edajima heihachi" de aru!!!
$ echo "${HOGE%\!}"
washi ga otoko-juku jukucho "edajima heihachi" de aru!!
$ echo "${HOGE%a}"
washi ga otoko-juku jukucho "edajima heihachi" de aru!!!
見ると分かるように,/ は指定したものが最初に現れたところのみ変換する.また # は先頭にのみマッチし,% は末尾にのみマッチする.また,デリミタに : を指定して数字を指定すると,先頭文字を0番目とした番号での切り出しを行なうことができる.
$ echo "${HOGE:10}"
toko-juku jukucho "edajima heihachi" de aru!!!
$ echo "${HOGE::10}"
washi ga o
$ echo "${HOGE:5:10}"
ga otoko-
最初の例では先頭10文字を切り取った値,2番目の例では先頭10文字以外を切り取った値,3番目の例では5番目から10文字を切り出した値だ.
またこれとは別に,${#HOGE} とすると格納されている文字列の長さを意味する.
$ echo "${#HOGE}"
56
他にも,${変数名:-値} と ${変数名-値} というようなものがある.前者の記述をすると,その変数が初めて出現した,もしくはNULL値が入っていた時にのみ値を返す.後者は変数が初めて出現した時にのみ値を返す.
$ echo "${HOGE:-wan ta-ren shibou kakunin}"
washi ga otoko-juku jukucho "edajima heihachi" de aru!!!
$ echo "${FOO:-wan ta-ren shibou kakunin}"
wan ta-ren shibou kakunin
$ FOO=
$ echo "${FOO-wan ta-ren shibou kakunin}"
(空行)
これに似たものに ${変数名:=値} と ${変数名=値} があるけど,これは変数への代入も行なう点で動作が異なる.