メモの日々


2001年05月31日(木) 雨雨

自転車買ったのだよ。ハンドルをくっつけてチェーンをはめた。サドルを下げる必要あり。雨ばかりなのでまだ乗ってません。


2002年05月31日(金) ワールドカップ開幕

会社

  • 10:30 今晩のフランスvsセネガルから始まるなり。引き分けとみた。もう5月も終わりなのですな。
  • 今日もredhatでup2date -u。arpwatch-2.1a11-11.7.1 libpcap-0.6.2-11.7.1 tcpdump-3.6.2-11.7.1がインストールされた。昨日は途中で失敗したけどimapが新しくなったみたい。
  • 10:55 SQL Serverはポート1433番で待ち受けするみたい。だから1433へのアクセス制限をかけましょうとPASSJ MLのメールニュースに書かれていた。そりゃそうだすな。
  • 11:35 今日はGoogleもサッカーだ。
  • 15:45 搬入搬出管理を考えてみているがよく分からない。こういうの難しいなあ。
  • 15:50 NBS部のウェブサイトは全然更新されていないようだ。

CERT Advisory CA-2002-14 Buffer overflow in Macromedia JRun

JRunに脆弱性。JPCERTのMLより。ITフロンティアのページには何の情報も見当たらない。困ったものです。

セキュリティ対策よりも認定取得が目的に?

ISMSについてのちょっとした話。セキュリティホールmemo MLより。ISO9001は完全に取得が目的になっていたからISMSも心配だ。

テレビ/本

  • トルシエジャパンのこれまでの歩みみたいなやつ。ロッカールームでの会話とかが面白い。
  • みなさんのおかげでした。かな。華原朋美と渡辺謙の食わず嫌い対決。アボガドサラダとウズラ揚げが嫌いだったかな。
  • 日経オープンシステム。DBの物理設計その2とか。

2003年05月31日(土) 野坂昭如、脳梗塞で入院

[java] "Extension for Struts"ダウンロード (IBM)

Extension for Strutsに興味が湧いている。今の最新版はV1.1のようだ。V1.1ではStruts1.1Beta2に対応しているみたい。

解説はほとんど見つけられなくて、「Strutsの実践的利用技術」セミナー資料しかない。ここの資料によると、

  • Actionクラスを拡張したWsxTemplateActionクラスが用意されている。
  • WsxTemplateActionクラスにより事前/事後処理をサポートする(ありがたみがよくわからない)。
  • WsxTemplateActionクラス内ではHttpSessionのロックが自動的に行われるようだ。
  • 「Screen Order Control」という、画面遷移をサポートする機能がある。ブラウザの戻るボタンへの対処など頭の痛い問題を解決してくれるようだ。仕組みが分からないけれど便利そう。
  • 高度なログ機能のサポート。どう高度なのかなあ。
  • リソースの取得を補助する機能がある。よくわからない。
  • ブラウザからの入力のチェックのサポート機能がある。

ダウンロードして使ってみたいけれど、そこまでやる気合は今はない。しょぼん。

[java] SableCC (市山了一さん)

JavaベースのCompiler CompilerSableCCの解説。なんとなくメモ。おいぬま日報(不定期)より。

[サッカー] 日本vs韓国

をTVで観戦。日本の先発は楢崎秋田森岡服部名良橋中田稲本小笠原三都主鈴木中山。全然シュートがないつまらなーい試合。後半は少し動きがあったが楽しいのは韓国ファンだけだなあ。三都主にはガッカリ服部全然上がれない小笠原も光らない。これが今の実力。

仕事のTODO

考え中


2004年05月31日(月)

  • 仕事が暇になってしまったのでサッサと退出した。
  • 新宿でシャツを物色したが欲しいと思ったやつはみな高い。うーん。
  • 今日中にドキュメントが提出されるという話だったが今の所音沙汰ない。進められませんです。

新聞メモ

5月31日の産経新聞より。

歯止めかからぬ自転車対歩行者事故

自転車対歩行者の事故が増えているという記事。グラフを見ると平成12年に激増しているがその理由の考察は見当たらない。平成15年の死者は6人とのこと。すごく少ないじゃないか。

事故は高校生の運転によるものが多いらしい。事故により多額の賠償を求められることもある。

高校生が無灯火の自転車で下校中に高齢の女性に激突、後日女性が死亡した事故で、高校生側の賠償額は1950万円だった。また、下り坂を走行中の高校生が高齢者と接触、転倒した高齢者が死亡した事故の賠償額は1054万円。

このほか、高校生の自転車と女性が衝突、女性が翌年死亡した事故で、横浜地裁は8年5月、3024万円の賠償を高校生に命じている。

自転車用の保険もある。警察は取締りを強化しているとのことなので、乱暴な運転は厳禁。

やること

  • プリンタ処分

2007年05月31日(木)

[c][c++] ccacheを使った

コンパイル時間を短縮できるというccacheを使ってみた。

yumでインストールすると /usr/lib/ccache/bin が作られて

$ ls -l /usr/lib/ccache/bin
合計 28
lrwxrwxrwx  1 root root 15  5月 31 11:59 c++ -> /usr/bin/ccache*
lrwxrwxrwx  1 root root 15  5月 31 11:59 cc -> /usr/bin/ccache*
lrwxrwxrwx  1 root root 15  5月 31 11:59 g++ -> /usr/bin/ccache*
lrwxrwxrwx  1 root root 15  5月 31 11:59 gcc -> /usr/bin/ccache*
lrwxrwxrwx  1 root root 15  5月 31 11:59 i386-redhat-linux-c++ -> /usr/bin/ccache*
lrwxrwxrwx  1 root root 15  5月 31 11:59 i386-redhat-linux-g++ -> /usr/bin/ccache*
lrwxrwxrwx  1 root root 15  5月 31 11:59 i386-redhat-linux-gcc -> /usr/bin/ccache*

というシンボリックリンクが作成された。また、/etc/profile.d/ccache.sh が作られて

$ cat /etc/profile.d/ccache.sh
if ! echo "$PATH" | grep -q /usr/lib/ccache/bin ; then
    PATH="/usr/lib/ccache/bin:$PATH"
fi

となっていた。なので、パッケージをインストールしてログインし直すと、何も設定しなくてもビルド時に勝手にccacheが使われるようになる。

で、その効果だけれど、ビルドに3分かかってたものが20秒で終わるようになった。快適です。

[vim] Vim 7.1を +ruby にする

先日ビルドしたVimは、「vim --version」を実行すると「-ruby」と表示されていた。これを「+ruby」に変えたかった。

$ make distclean
$ ./configure --with-features=big --enable-rubyinterp
$ make

でいいはず、と思って再ビルドしてみたが、出来上がったvimは相変わらず「-ruby」のままだった。

すわ ccache のせいか、などと疑ってみたが、src/auto/config.log をよく見ると

configure:4715: checking --enable-rubyinterp argument
configure:4724: result: yes
configure:4730: checking for ruby
configure:4748: found /usr/bin/ruby
configure:4760: result: /usr/bin/ruby
configure:4768: checking Ruby version
configure:4771: result: OK
configure:4773: checking Ruby header files
configure:4813: result: not found

と出力されていた。ああ、Rubyのヘッダファイルが必要なのか。「yum install ruby-devel」を実行した後にVimをビルドし直したら、無事「+ruby」になった。

やること

  • 年金

2008年05月31日(土)

  • バレーボールのオリンピックの世界最終予選、男子が始まった。日本の初戦の相手はイタリア。先発は宇佐美山村石島山本松本越川リベロ津曲。第1セットはあっさり取られるも、第2第3セットは終盤の素晴らしい粘りで30-28で奪い返す。そして第4セット。24−17とマッチポイントまでいくが、ここからまさかの逆転負け。山本活躍していたが、ここ一番で決められない。明日から切り替えるしかない。

[life][hard] CASTチェアを買った

3週間前に机が届いたが、椅子はずっとなかった。先週注文し、今日届いた。

買ったのは、内田洋行のCASTチェア。タイプはスーパーバック/フルアジャスタブル肘/ゴムキャスターのもの。ヘッドレストはなし。@interiorというオンラインショップが安かったので、ここで52700円で買った。

内田洋行の椅子は最低座面高の低いものが多い所がよい。CASTチェアの最低座高は38cm(ただしゴムキャスターにしたのでうちのは39cm)で、これなら低いと感じていた机にもなんとか対応できそう。座り心地も、今の所悪くない。見た目はバロンなんかに比べると大分劣るけれど、そんなに変でもない。

最初、説明書が見つからなくて困ったが、座面の裏に小さい説明書用のポケットが付いていて、そこに入っていた。

自分では上手く書けないので、ウェブ上で参考にしたレビューをメモ。

[hard] 椅子について

ちょっとだけメモ。メーカー別に。

内田洋行

山田洋行ではない。結構色々な椅子を出している。座面を低く出来るのと、標準でゴムキャスターを選べる椅子が多い所がよい。Actioも安くていいなと思っていたが、背中が堅そうで痛いかもと思いやめた。

スチールケース

Thinkが新宿の東急ハンズで座れる。見た目も座り心地もよく、値段も手頃で気に入っていたが、キャスターがナイロン製しかないみたいでやめた。内田洋行でもスチールケースの椅子を扱っている。

岡村製作所

人気のバロンに文句は無いが、やっぱり高いのでやめた。安めのインクラインなんかも気になっていたが、結局やめた。

イトーキ

スピーナいいなあと思っていたが、東急ハンズで座ったら全然合わなくてやめた。

コクヨ

AGATA/Sなんかわりといいと思うが、あまり検討もせず。もう少し安ければ。

シグマAPO

最初はこのレベルで探していた。MSKC5がかっこいいなあと思っていたけど、安っぽいかと思いやめた。


2011年05月31日(火)

  • 松潤の声が新沼くんの声に似ていると思った、ということをメモ。

2017年05月31日(水)

[shell] Bashで配列

Bashでは

a=(a b c d e)

のように()を使うと配列を生成することができる。

要素の参照

echo ${a[0]}      #=> a
echo ${a[1]}      #=> b
echo ${a[-1]}     #=> e
echo ${a[@]}      #=> a b c d e
echo ${a[@]:2}    #=> c d e
echo ${a[@]:2:2}  #=> c d

要素数とインデックスの参照

echo ${#a[@]}     #=> 5
echo ${!a[@]}     #=> 0 1 2 3 4

要素の追加と削除

a+=(hello)   && echo ${a[@]}  #=> a b c d e hello
a[100]=world && echo ${a[@]}  #=> a b c d e hello world
unset a[2]   && echo ${a[@]}  #=> a b d e hello world
echo ${!a[@]}                 #=> 0 1 3 4 5 100

[shell] Bashで計算

Bashは算術式展開を使うと簡単な計算ができる。

echo $((1 + 1))           #=> 2
echo $((2 ** 3))          #=> 8
i=10 && echo $((i % 4))   #=> 2

[shell] Bashで乱数

Bashのシェル変数にはRANDOMという変数があり、これを参照すると0~32767のランダムな整数を得られる。

$ for n in {1..10}; do echo $RANDOM; done
12349
4092
31967
6007
10451
27446
25349
2318
12177
23783

2018年05月31日(木)

[life] 保育園への送り

今日も歩こうとしない。構わずどんどん先に進むと「抱っこー」と叫びながらついて来るので、しばらくはそれで歩かせた。

途中の小学校で運動会の練習をしていた。それを見て「赤い帽子」「白い帽子」と的確に言えて偉い。


2019年05月31日(金)

[ruby] Rubyで簡単なファイル編集

Rubyで簡単なファイル編集を行うならワンライナーで済ますのがよい。ワンライナーを書くにはコマンドラインオプション

-e script
実行するスクリプトを指定する。
-i[extension]
引数で指定されたファイル群の内容を、標準出力へ書き込まれた内容で置き換える。extensionを指定すると変更前のファイルを残せる。
-l
-nオプションの読込結果(変数$_)が改行を含まなくなる。
-n
引数でしたファイル群の各行(行の内容は変数$_に設定される)に対して-eオプションで指定されたスクリプトを実行する。

あたりを使用する。

% ruby -nli -e 'print $_.gsub(/\+(\w+)\+/, "`\\1`").gsub(/_(\w+)_/, "*\\1*")' dir/**/*

ワンライナーにしないなら、ARGFを使うと同じ事ができる。

ARGF.inplace_mode = ""
ARGF.each_line do |line|
  print line.gsub(/\+(\w+)\+/, "`\\1`").gsub(/_(\w+)_/, "*\\1*")
end

ただ、inplace_modeを使うと標準出力への出力がファイルに出力されてしまうので注意が必要。

inplace_modeって取り消すことはできないのかな?