Postgres の入門書である「シーラカンス本」の改訂第4版。ターゲットとなるバージョンは 7.4.2。
amazon にはまだ登録されていないけど、bk1 にはすでにデータがあった。
http://www.bk1.co.jp/cgi-bin/srch/srch_result_book.cgi?aid=p ...
未だに7.2 系列の Postgres を使ったシステムも動いてるけど、安定しすぎちゃってまったく手がかからない。激しいトランザクションがある訳でもないし、データの増加は月あたり10万件くらいしかないからかな。セキュリティホールとか致命的なデータ破壊エラーが無いのであればバージョンアップする理由もない。
[pgsql-jp: 33045] シーラカンス本第4版
http://ml.postgresql.jp/pipermail/pgsql-jp/2004-May/008187.h ...
PostgreSQL 7.4.2対応ですので,7.4の機能についてあれこれ書いた結果,特
に3章が膨らんでしまいました.また,5章もチューニングなどで量が増えてし
まいました.そこで第4章のサンプルをダイエットしました.取り上げた言語
はPHPとPerlのみ,どちらもシンプルな共通のデータベースを使ったWenアプリ
ケーションです.PHPの方は,PHP+PEAR+Smartyという今流行のコンビ.Perlの
方は,DBI+DBD-PgにHTML::Templateを組み合わせています.この結果は,トー
タルでなんとか418ページに収まりました.
発売は6/28です.それと,なんと今回シーラカンスのフィギュアが限定でおま
けについています:-)企画的には大変だったと思いますが,ご尽力いただいた
技術評論社の関係の方々に感謝しています.
フィギュアのもらい方:-)その他詳細については,
http://www2b.biglobe.ne.jp/~caco/fourth_edition/index.html
「改訂第4版・PostgreSQL 完全攻略ガイド」サポートページ
http://www2b.biglobe.ne.jp/~caco/fourth_edition/
以下から予約や購入をすると,限定シーラカンスフィギュアがもらえる特典が付いていますまるでダイドー の MIU の「深海生物コレクション」みたいなフィギュアだ。フィギュアプレゼント対象店に bk1 も入ってるみたいだし、次に Postgres を使ったシステムを作るときに買おう。
テレビが欲しくなった。今使ってるテレビは、1996年に買った物だ。最近はプラズマだの液晶だのといろいろ新しくなってるようだし、そろそろ買い替えてもいいかもしれない。そこで、私が使うにあたって必要な機能は何かを洗い出し、どんなモデルをいつ買ったらよいかを考えてみる。
フラットブラウン管ではなく、曲面ブラウン管。
S 端子を背面に一系統装備。前面には無し。
チューナーは地上波のみで、B/S や C/S チューナーは付いていない。
光センサーが付いていて、コントラストや輝度を自動調節してくれる。
初めてもらったお給金を貯めて買った物だ。シンプルだけど最低限の機能は抑えてある。とくに故障などもなく元気。購入価格55000円だったから、1インチあたり1897円。液晶などに比べて圧倒的なコストパフォーマンスの良さ。ブラウン管偉い!
最初は29インチ大画面! と思ってたけど、やっぱりもうちょっと大きい方がいいなあ。一人で視ているときは良いけど、複数人で視るときとかはもっと大きい画面が欲しくなる。「シアター6 ギャラクシアン3」みたいに110インチプロジェクターを2基使って壁いっぱいに投影! とかはやるつもりはないけど。
今時フラットブラウン管じゃない。
画面に近づいて見ているとき、曲面だと微妙に違和感がある。PC で使ってるディスプレイはみんなフラットか液晶なので、フラットに慣れてしまった。「スターブレード オペレーション・ブループラネット」みたいに天球型の筐体とかだったら意味あるけど、平らな絵を湾曲した画面に映すというのはおかしい。
入力端子が S端子しかない。
D端子やコンポーネント端子を使って、プログレッシブでゲームやったり DVD を視たい。S端子もコンポジットビデオ出力に比べれば綺麗だが、やっぱりもっと綺麗な画面でプレイしたい。D端子やコンポーネント端子はアナログなのが残念だけど、デジタル伝送の規格ってあるのかどうかわからないし、そもそも民生用に降りてくるまでにまだ時間がかかりそう。
特定シーンで画面がブレる。
このテレビの不具合だと思うが、一瞬だけ画面が白くフラッシュするシーンで、画面が上下にぶれる。たとえば、スターフォックスでボスを倒した瞬間とか。この現象が出るのはたいてい爆発シーンなので実害はあんまり無いし、派手な爆発シーンをテレビがさらに演出してくれてると思えば大したことはない。あ、でもドリームキャストの「ソニックアドベンチャー」で鏡を使って光を誘導するシーンがあって、そのあたりでは画面がぶれまくってたな。しかも足場が悪いステージなのでソニックが足場を失って落ちまくったことはあった。ソニック、ごめんね。
現在は1.3m から 2m ほどの位置で画面を見てる。1.3m の位置ではちょうど良く感じるが、2mの位置では小さく感じる。単純比率で考えると、13:20 だから、29:x として・・・ x は 18.85インチ、ってなんで小さくなってるんだ。こんな計算間違えてるとフーゴに「俺をナメてんのか」とか言われそうだ。えーと、正しくは約46インチか。なんだか大きすぎるように感じるな。本当にこんなサイズが必要なのかな? あ、しかも最近のテレビって縦横の比率が 4:3 じゃなくて 16:9 なんだっけ。ああ、なんかもう計算はいいや。カンで行こう。横幅を基準にすると、16:9 の場合は36インチくらいだろうか。ゲームやる人にとっては 16:9 ってあんまり良くないなあ。16:9 対応のゲームは増えてるけど、やっぱり基本は 4:3 だし。
奥行きはあまり気にしない。液晶やプラズマはその薄さがもてはやされているようだが、私はテレビをメタルラックに乗せているので、メタルラックの奥行きである45cm + 出っ張り部分10cm を超えなければ奥行きがあってもなくても変わらない。壁掛けテレビとか薄型のテレビを買っても、結局アンプやスピーカーを置いた時点でシステム全体としてある程度の奥行きは必要になる。画質にこだわる人は音質にもこだわるだろうし、音をテレビ本体のスピーカーに頼るというのはあまりよろしくない。
私が地上デジタル見る時って、たぶん録画したものを見るだろうし。録画用のデバイスがチューナー積んでいればそれでいい。地上デジタルが一般的になる頃には、ハードディスクビデオレコーダもテラバイト単位でディスク積んでるだろう。あ、でもアナログ放送が終わっちゃうとリアルタイムに見られる放送がなくなっちゃうのか? それはほんの少しだけ困るなあ。
さて、コジマやヤマダのチラシを見てみる。高い。このスペックだと40万円台から60万円くらいする。買えるけど、そこまでして買う物でもない。これが半額になったら検討するけど。コレ買うくらいなら YAMAHA の MOTIF ES8 でも買うよ。
結論。4:3 29インチ買った方がトータルで幸せ。D1 だけど D端子付いてるし。
- 今使っているテレビ SANYO の C-29F30
SANYO の C-29F30 という29インチ 4:3 画面モデル。1996年製。フラットブラウン管ではなく、曲面ブラウン管。
S 端子を背面に一系統装備。前面には無し。
チューナーは地上波のみで、B/S や C/S チューナーは付いていない。
光センサーが付いていて、コントラストや輝度を自動調節してくれる。
初めてもらったお給金を貯めて買った物だ。シンプルだけど最低限の機能は抑えてある。とくに故障などもなく元気。購入価格55000円だったから、1インチあたり1897円。液晶などに比べて圧倒的なコストパフォーマンスの良さ。ブラウン管偉い!
- 今使っているテレビの不満点
今となっては画面サイズが小さい。最初は29インチ大画面! と思ってたけど、やっぱりもうちょっと大きい方がいいなあ。一人で視ているときは良いけど、複数人で視るときとかはもっと大きい画面が欲しくなる。「シアター6 ギャラクシアン3」みたいに110インチプロジェクターを2基使って壁いっぱいに投影! とかはやるつもりはないけど。
今時フラットブラウン管じゃない。
画面に近づいて見ているとき、曲面だと微妙に違和感がある。PC で使ってるディスプレイはみんなフラットか液晶なので、フラットに慣れてしまった。「スターブレード オペレーション・ブループラネット」みたいに天球型の筐体とかだったら意味あるけど、平らな絵を湾曲した画面に映すというのはおかしい。
入力端子が S端子しかない。
D端子やコンポーネント端子を使って、プログレッシブでゲームやったり DVD を視たい。S端子もコンポジットビデオ出力に比べれば綺麗だが、やっぱりもっと綺麗な画面でプレイしたい。D端子やコンポーネント端子はアナログなのが残念だけど、デジタル伝送の規格ってあるのかどうかわからないし、そもそも民生用に降りてくるまでにまだ時間がかかりそう。
特定シーンで画面がブレる。
このテレビの不具合だと思うが、一瞬だけ画面が白くフラッシュするシーンで、画面が上下にぶれる。たとえば、スターフォックスでボスを倒した瞬間とか。この現象が出るのはたいてい爆発シーンなので実害はあんまり無いし、派手な爆発シーンをテレビがさらに演出してくれてると思えば大したことはない。あ、でもドリームキャストの「ソニックアドベンチャー」で鏡を使って光を誘導するシーンがあって、そのあたりでは画面がぶれまくってたな。しかも足場が悪いステージなのでソニックが足場を失って落ちまくったことはあった。ソニック、ごめんね。
- 画面サイズと本体サイズはどのくらいがいい?
画面サイズはどれくらいが良いんだろう。29インチでは小さいけど、あまり大きすぎるのも困るな。現在は1.3m から 2m ほどの位置で画面を見てる。1.3m の位置ではちょうど良く感じるが、2mの位置では小さく感じる。単純比率で考えると、13:20 だから、29:x として・・・ x は 18.85インチ、ってなんで小さくなってるんだ。こんな計算間違えてるとフーゴに「俺をナメてんのか」とか言われそうだ。えーと、正しくは約46インチか。なんだか大きすぎるように感じるな。本当にこんなサイズが必要なのかな? あ、しかも最近のテレビって縦横の比率が 4:3 じゃなくて 16:9 なんだっけ。ああ、なんかもう計算はいいや。カンで行こう。横幅を基準にすると、16:9 の場合は36インチくらいだろうか。ゲームやる人にとっては 16:9 ってあんまり良くないなあ。16:9 対応のゲームは増えてるけど、やっぱり基本は 4:3 だし。
奥行きはあまり気にしない。液晶やプラズマはその薄さがもてはやされているようだが、私はテレビをメタルラックに乗せているので、メタルラックの奥行きである45cm + 出っ張り部分10cm を超えなければ奥行きがあってもなくても変わらない。壁掛けテレビとか薄型のテレビを買っても、結局アンプやスピーカーを置いた時点でシステム全体としてある程度の奥行きは必要になる。画質にこだわる人は音質にもこだわるだろうし、音をテレビ本体のスピーカーに頼るというのはあまりよろしくない。
- 地上デジタル放送どうする?
地上デジタルはいらない。って、これだとなんだか語弊があるね。正確に言うと、地上デジタルチューナーを標準搭載している必要はない。私が地上デジタル見る時って、たぶん録画したものを見るだろうし。録画用のデバイスがチューナー積んでいればそれでいい。地上デジタルが一般的になる頃には、ハードディスクビデオレコーダもテラバイト単位でディスク積んでるだろう。あ、でもアナログ放送が終わっちゃうとリアルタイムに見られる放送がなくなっちゃうのか? それはほんの少しだけ困るなあ。
- どんなテレビを買ったらよいか
奥行き55cm以下。画面サイズは 縦横比 16:9 なら 36インチ以上。 D 端子かコンポーネント端子をできるだけ多く。で、値段が安くて消費電力が少ない物。地上デジタルはあってもなくても良い。さて、コジマやヤマダのチラシを見てみる。高い。このスペックだと40万円台から60万円くらいする。買えるけど、そこまでして買う物でもない。これが半額になったら検討するけど。コレ買うくらいなら YAMAHA の MOTIF ES8 でも買うよ。
結論。4:3 29インチ買った方がトータルで幸せ。D1 だけど D端子付いてるし。
父がデジカメをほしがっている。私はデジカメもカメラ付ケータイも持ってないので、基礎知識から学ばなければならない。どんな機能が必要かをよく考えて探そう。
値段も手頃。スライド式で電源オンってのも父にはわかりやすいだろうし。あ、でも単三電池が使えないのは難点だな。父は使用前に充電なんかしてくれないだろうし。生活防水つきなのはいいけど、使うかな?
X-350 は2004年春モデル。基本的な部分は一緒みたいだけど、単三電池が使えるのがイイ。
CAMEDIA X-2 は在庫処分価格だけあってすごい割引額だ。6万円近く引いているもんなあ。
そういえば、父は中田がやってた IXY の CM 見てデジカメ欲しいって言ってたんだっけ。確かに小さいのにカッコイイ。
PowerShot は持ちやすそうだ。
FX-310 はかなり手ごろな価格だな。あ、でも今は在庫が無いか。
A330 って後継機種?
これは安いのにいいなあ。
小さくて薄く、価格も手ごろなのに光学3倍ズームってすごいなあ。あ、でも210万画素か。それでも十分と言えば十分なんだけど。
ああ、もうねむくなっちゃったので、後の機種はあとで調べよう。
- 直感的に操作できる機種、機能や画質はこだわらない
そういえば、前に父に持たせたケータイはカメラ付いてたけど、全然使いこなせてないぞ。となると、やっぱり取っつきやすくて直感的に使える簡単な機種であることが大前提かな。画質や複雑な設定ができる機種じゃなくていいはずだ。入門用のモデルで良さそうなのを探してみよう。予算的には本体のみで30000円くらいまで。あ、私個人的には光学3倍ズームが付いてる物が欲しいなあ。- オリンパス
値段も手頃。スライド式で電源オンってのも父にはわかりやすいだろうし。あ、でも単三電池が使えないのは難点だな。父は使用前に充電なんかしてくれないだろうし。生活防水つきなのはいいけど、使うかな?
X-350 は2004年春モデル。基本的な部分は一緒みたいだけど、単三電池が使えるのがイイ。
CAMEDIA X-2 は在庫処分価格だけあってすごい割引額だ。6万円近く引いているもんなあ。
CAMEDIA X-2: 有効画素数 : 500万画素こんなに画素数が多くても持て余すだろうな。そもそもちょっと予算超過してるし。
- キヤノン
そういえば、父は中田がやってた IXY の CM 見てデジカメ欲しいって言ってたんだっけ。確かに小さいのにカッコイイ。
{Canon PowerShot A75}:amazon:B0001J4AQ0
PowerShot は持ちやすそうだ。
- カメラらしい形の Panasonic LUMIX
いかにもカメラって形だな。持ちやすく、固定しやすそう。ちょっと予算オーバーだけど、2004年夏の新モデル LUMIX LC70 もある。- その他メーカーで目にとまったもの
FX-310 はかなり手ごろな価格だな。あ、でも今は在庫が無いか。
{FUJI FILM FinePix A330 デジタルカメラ}:amazon:B0001LNDVQ
A330 って後継機種?
これは安いのにいいなあ。
Caplio G4: 世界最速レリーズタイムラグ0.14秒*1&起動時間1.9秒の瞬発力これはすごいな。
小さくて薄く、価格も手ごろなのに光学3倍ズームってすごいなあ。あ、でも210万画素か。それでも十分と言えば十分なんだけど。
ああ、もうねむくなっちゃったので、後の機種はあとで調べよう。
ドロップパケットの数値を監視するため、netstat -i を1秒間隔で自動実行したい。
while で無限ループを作って sleep で間隔を入れている。日付を表示するために date を、毎回画面クリアするために clear を追加した。
単純だけどこれで十分。もちろん、sleep している間は CPU を消費しないので安心。
- while と sleep を使ってシェルスクリプトを書く
$ while true; do date; netstat -i; sleep 1; clear; done;
while で無限ループを作って sleep で間隔を入れている。日付を表示するために date を、毎回画面クリアするために clear を追加した。
単純だけどこれで十分。もちろん、sleep している間は CPU を消費しないので安心。
- watch コマンドを使う
$ watch --interval 1 netstat -iこれで1秒間隔で netstat -i を実行し、出力を画面に表示してくれる。ちなみに cygwin でも試してみようと思ったら watch コマンドがインストールされてなかった。
- 参考
昔ピザを生地から作ったときに参考にしたレシピ。
私のホームディレクトリの「レシピ」ディレクトリを整理してたら見つけた。あのとき焼いたピザは美味しかったし、何より料理するのが楽しかったなあ。空中に生地を放り投げて伸ばしていく「ハンドトス」は一回はやってみるべし。映画「少林サッカー」で趙薇(ヴィッキー・チャオ) 扮するムイがやってたようなやつね。私も太極拳が使えればあんな風にできるのになあ。
ひとまず特徴的な文章をGoogle 検索してみる。Google で満足満足な食べ物ですねを検索。ヒットなし。Google でオーブンに掘り込めばを検索。これもヒットなし。なかなか手強いな。
・冒頭三行の引用記号
・34行目から35行目の # によるコメント文
・かなり長文
・半角70文字で改行が入っている
・77行目で別の記事になっている? (上記においては引用の切れ目の部分)
これらから推察するに、NetNews の記事だろう。時期から考えて、fj.rec.food もしくは japan 系のニュースグループかな。Google のウェブ検索ではなく、グループ検索でさっきの特徴的文章を検索してみる。うーん、やっぱりヒットしない。推理は外れなのかなあ? テキストを見ただけでその文書の出典がわかる念能力とかあればいいのに。
私のホームディレクトリの「レシピ」ディレクトリを整理してたら見つけた。あのとき焼いたピザは美味しかったし、何より料理するのが楽しかったなあ。空中に生地を放り投げて伸ばしていく「ハンドトス」は一回はやってみるべし。映画「少林サッカー」で趙薇(ヴィッキー・チャオ) 扮するムイがやってたようなやつね。私も太極拳が使えればあんな風にできるのになあ。
>ピザ生地のお話が出ているので、
>作り方を教えていただけますか。
>いろいろお教えください。よろしくお願いします
ピザってもともと、パン生地のあまったものに、適当にトッピングして焼いて
食べてたものですから、好き勝手に作って良いものなんですね。
で、大昔スペイン人(?)がアメリカで発見した、トマトがヨーロッパで大流
行して、スパゲティのソースにしたり、ピザソースにしたりしたものなので、
ピザソースはトマト入れてなくても当たり前。
お好みで、ソースを作って、お好みのチーズを乗っけて、お好みでトッピング
を乗せて、オーブンに掘り込めばそれでOK。
アッチッチの所を手掴みでバクバクと食べれば、満足満足な食べ物ですね。気
取りたいときは、ナイフにフォークですか?
我が家のレシピ(ピザ生地)
1.強力粉(日清ならばカメリアだったかな?)
2.塩 適量
3.水 適量(耳たぶ程度の柔らかさになるように加減しましょう)
4.砂糖 少々(イースト菌の活性化用)あまりたくさん入れると、イースト菌が
満腹になって働きが悪くなります。ほんの少しで良いですよ。
5.イースト(パン用:なまのイースト菌があれば良いですが、ドライで十分)
ぬるま湯で、イースト菌を活性化させるなら、ぬるま湯の中に砂糖を少々入れ
ると良いですね、小麦粉に入れなくても良くなります。
後はオプション。
クラスト(焼きあがったピザ生地)を軽い感じ(パリ、カリッ)にしたければ、
これに植物性のショートニング或いは、オリーブオイルを適量。
#なんか適量ばっかりですね。でも料理は遊びですから、数字に縛られず、指の
#感覚とか、舌の感覚とかでやりましょう。(^_^)
日清のカメリアは、さらっとした小麦粉で、小麦の味上品というかあまりしな
いようでね。ピザ生地の味は、小麦粉で決まりますので、こだわって探してみてく
ださい。良い小麦粉がありましたら、教えてくれるとうれしいな。この間新宿の
高島屋に行ったら、製菓製パンコーナーがあって小麦粉を何種類か置いてま
したね。
用意した水を除いた、上の材料をボールに入れ、後から水を少しずつ入れます、
一度に入れて小麦粉が手に付いてべとついたら、しょうがないので小麦粉を
足しましょう。耳たぶくらいの柔らかさになったら、35Cくらいの所で、発酵させま
す。今の季節ならこたつの中でOKですね。
さて、この発酵ですが、捏ねあがったものを、そのまま小さくピザ一枚分に分
割し小さな玉を作って、発酵させるやり方と。
大きな塊のまま発酵させ、一時発酵が終わったら、小さくピザ一枚分に分けて、
二次発酵させるやり方とが代表的です。
私は、生地には塩しか基本的には入れませんので、捏ね上げ、分割、丸め、
一時発酵、即、生地を伸ばしてトッピング焼き上げです。
でも、ピザにバターとか、ミルクとか入れて、リッチな生地の場合には一次発
酵、二次発酵のほうが良いかもしれませんね。
もっとリッチな生地をとか、滑らかな生地を作りたい場合には、一時発酵が終
わったら、分割丸めで、二次発酵を冷蔵庫内で低温発酵させましょう。8時間
〜16時間くらいかな。
発酵した生地は、簡単に伸ばせます。簡単に伸ばせないときは発酵不足です。
もう少し待ちましょう。35Cだと30分くらい?ですね。
冷蔵庫発酵させた生地は、焼く前に生地が室温までもどるよう、生地を乾かさ
ないようにしながら置いておきます。
最初に分割して丸め、玉にしたときの倍くらいの大きさと言いますが、生地が
発酵すると柔らかくなり、球の状態から、円盤状態になるので、直径が3倍か
ら4倍くらいになるかも。
そうしたら、回転を加えトスアップして生地を伸ばしましょう。何回か練習
すれば、できるようになると思います。これを人前でやると、受けますよ!頑
張って練習してくださいね!
ソースとチーズ、トッピングはお好みで。
>我が家のレシピ(ピザ生地)
>1.強力粉(日清ならばカメリアだったかな?)
うちは、薄2:強1位で使ってます。
1回分だと、薄:100gに強:50g位かな。
>2.塩 適量
小匙1/2位かなぁ?
>3.水 適量(耳たぶ程度の柔らかさになるように加減しましょう)
だいたいカップ半分位。が、数値的分量よりも、出来を見て加減する方が大事。
>4.砂糖 少々(イースト菌の活性化用)あまりたくさん入れると、イースト菌が
>満腹になって働きが悪くなります。ほんの少しで良いですよ。
うちは入れません。
>5.イースト(パン用:なまのイースト菌があれば良いですが、ドライで十分)
>ぬるま湯で、イースト菌を活性化させるなら、ぬるま湯の中に砂糖を少々入れ
>ると良いですね、小麦粉に入れなくても良くなります。
ドライで大匙1。
水に、塩+イーストを溶かして、良く混ぜた粉に注ぎ入れ、大きく混ぜて全体を
1つになるようにまとめていきます。この時点で固さを水加減で調整します。
で、ひたすら(10分位)練る。
室温で1時間(季節で加減のこと)置いて、イーストを起こし、あとは冷蔵庫で。
1晩寝かすと結構いい感じになりますが、朝練って夕食に、っていう程度でも
十分行けます。
>発酵した生地は、簡単に伸ばせます。簡単に伸ばせないときは発酵不足です。
ですな。だいたい2倍位の大きさになっています。
あとは、手で薄く伸ばしていくわけですが、縁を太めで、内側からだんだん外に
向かって伸ばしていくようにすると、厚みを均等にしやすいような気がします。
途中で、
>そうしたら、回転を加えトスアップして生地を伸ばしましょう。何回か練習
>すれば、できるようになると思います。これを人前でやると、受けますよ!頑
>張って練習してくださいね!
ってのもたまにやります。:-)
最後に打ち粉をして、アルミホイルの上に置き、具をトッピング。
うちは具がテンコ盛りなのを常食にしてます。
チーズ+オニオン+ピーマン+マッシュルーム+プチトマト+アンチョビ+
ベーコン+ソーセージ+胡椒+パプリカ+バジル+粉チーズ、ってとこかな?
あとは300度のオーブンで20分位。(余熱ゼロの状態から)
- 出典はどこ?
ところで、このレシピは出典が不明。テキストファイルの中身は上に記載したもので全部。ファイルのタイムスタンプは1999年1月20日って書いてあるが、それ以外の情報はない。ひとまず特徴的な文章をGoogle 検索してみる。Google で満足満足な食べ物ですねを検索。ヒットなし。Google でオーブンに掘り込めばを検索。これもヒットなし。なかなか手強いな。
- 出典を推理する
・時期が1999年・冒頭三行の引用記号
・34行目から35行目の # によるコメント文
・かなり長文
・半角70文字で改行が入っている
・77行目で別の記事になっている? (上記においては引用の切れ目の部分)
これらから推察するに、NetNews の記事だろう。時期から考えて、fj.rec.food もしくは japan 系のニュースグループかな。Google のウェブ検索ではなく、グループ検索でさっきの特徴的文章を検索してみる。うーん、やっぱりヒットしない。推理は外れなのかなあ? テキストを見ただけでその文書の出典がわかる念能力とかあればいいのに。
Windows では、ディレクトリのアイコンを右クリックしてプロパティを表示させると、そのディレクトリ以下のファイルのサイズの合計値がバイト単位で表示される。併せて、ファイル数やクラスタギャップを含めたディスク上のサイズも表示される。ちなみに、プロパティは ALT + ディレクトリアイコンのダブルクリックでも表示される。
Linux や Unix のコマンドラインで操作しているときも、同じ情報を表示させたい。
ls や du の man を読んでみたが、一発で解決してくれるようなオプションは無かった。
Manpage of LS
http://www.linux.or.jp/JM/html/GNU_fileutils/man1/ls.1.html
Manpage of DU
http://www.linux.or.jp/JM/html/GNU_fileutils/man1/du.1.html
特定ディレクトリ下を再帰的に検索するなら find の出番だ。man を見ると出力書式もかなり自由だし、いろいろできそう。find にファイルサイズを出力をさせて、それを合計してやればいいわけだ。合計くらいなら sh や bash などのシェルでもできそうだけど、パフォーマンス気にするわけでもないし、perl でいいか。文法調べるの大変だし。
Manpage of FIND
http://www.linux.or.jp/JM/html/GNU_findutils/man1/find.1.htm ...
Linux や Unix のコマンドラインで操作しているときも、同じ情報を表示させたい。
- du じゃブロックサイズの表示なのでダメ
すぐに思いついたのは du コマンドだが、du はファイルサイズではなくファイルが使っているブロックサイズを表示するのでダメだ。-b オプションをつけてバイト単位で表示させても、ブロックサイズをバイト単位で表示するだけなので今回の目的には使えない。以下、実行結果。ls では 29バイトなのに du ではブロック1個分の 4096バイトになっているのがわかる。$ date >date.txt
$ ls -l date.txt
-rw-r--r-- 1 hiroaki hiroaki 29 May 25 12:50 date.txt
$ du -b date.txt
4096 date.txt
ls や du の man を読んでみたが、一発で解決してくれるようなオプションは無かった。
Manpage of LS
http://www.linux.or.jp/JM/html/GNU_fileutils/man1/ls.1.html
Manpage of DU
http://www.linux.or.jp/JM/html/GNU_fileutils/man1/du.1.html
- コマンドを組み合わせて合計値を表示させる
こうなったらコマンドを組み合わせて望みの値を得るスクリプトを書くしかないでしょう。One Liner でも書けるかな。特定ディレクトリ下を再帰的に検索するなら find の出番だ。man を見ると出力書式もかなり自由だし、いろいろできそう。find にファイルサイズを出力をさせて、それを合計してやればいいわけだ。合計くらいなら sh や bash などのシェルでもできそうだけど、パフォーマンス気にするわけでもないし、perl でいいか。文法調べるの大変だし。
Manpage of FIND
http://www.linux.or.jp/JM/html/GNU_findutils/man1/find.1.htm ...
- ディレクトリを再帰的にたどって、ファイルの合計サイズを出力する。
$ find -type f -printf "%s\n" |perl -ne '$sum += $_; print "\r$sum"'一気にカウントが増えていくとこがかっこいい。ガソリンスタンドで給油量のカウンタについ見入ってしまうみたいな感覚。
- ディレクトリを再帰的にたどって、ファイルの合計サイズを出力する awk 版。
でも 必要ないのに重い perl 使う理由は無いよね。awk でいいか。--help したらサンプル載ってたし。awk だと END っていうのがあるので、\r を使わずに書けるんだね。$ find -type f -printf "%s\n" |awk '{sum += $1; printf "\r" sum };'
$ find -type f -printf "%s\n" |awk '{ sum += $1; }; END { print sum }'
- ファイルの個数とファイルサイズを表示。ファイルサイズは3桁ごとにカンマで区切る。
$ find -type f -printf "%s\n" |perl -ne '$i++; $byte += $_; $str = "\r$i files, $byte byte"; $str =~ s/(\d{1,3})(?=(?:\d\d\d)+(?!\d))/$1,/g; print $str'カンマが入っただけでもかなり雰囲気が変わる。なんだか「日本の借金カウンタ」みたいな感じがする。
- 他に欲しい機能は・・・
あとは再帰的にディレクトリをたどって、ディレクトリ毎にそのディレクトリが持つ容量を表示する機能が欲しいかなあ。要するに、du みたいに表示してほしいってこと。上記スクリプトはカレントディレクトリの容量しか表示しないけど、それを一気にやる機能。必要になったら作ろう。- このコマンドの名前をどうしよう?
du - disk usage に対抗して bu - byte usage ってのはどうだろう? いかん、私ってセンス無い。メールアドレスを書く必要があるけどメインのアドレスを書きたくないとき、フリーメールを捨てアドレスとして使うのはごく普通のこと。
さすがはひろゆき。スケールが違うなあ。レジストラへの登録までフリーメールか。
2ch.net移管問題こりゃいかん!
http://qb5.2ch.net/test/read.cgi/operate/1085495276/l50
これならアクセスできる。
http://www.ff.iij4u.or.jp/~ch2/bbsmenu_ip.html
さすがはひろゆき。スケールが違うなあ。レジストラへの登録までフリーメールか。
2ch.net移管問題こりゃいかん!
http://qb5.2ch.net/test/read.cgi/operate/1085495276/l50
1 :reffi@報告人 ★ [sage] :04/05/25 23:27 ID:???
577 名前: ◆BDFCNV1.to [sage] 投稿日:04/05/25(火) 22:43 ID:TowM+CDl
2ch.net の DNS の管理を PIE 側に移すよう〜
と管理人に伝えたら・・・
フリーのメアドで NSI に登録してあって
そのアドレスは使えなくなっているようです、、、
と言われた。
というわけで29日に色んな事が起こる事が予想されます。
- 移管の理由
11 :動け動けウゴウゴ2ちゃんねる [sage] :04/05/25 23:30 ID:E4SeTzGN
2chの動作報告はここで。 パート13
http://qb3.2ch.net/test/read.cgi/operate/1084854307/
17 名前:見習い▲ ★ 投稿日:04/05/19 16:50 ID:???
またまた 突然ですが
来週いっぱい(5/29) までに
he.net にあるサーバ全部キャンセルして pie に全板移します。
簡単に言えば交渉決裂 (NTTec - he.net)
he.net の設備はもう時代遅れ気味で使い物にならん設備投資してちょ(NTTec)
やだもーん (he.net)
全部pieに詰め込みますので少しの間窮屈が予想されます。
北国に七夕の季節がくるころには窮屈もだいぶ改善されているんでないかい。
- IP アドレスでアクセスすればいい?
DNS 使えなくなっても IP アドレスでアクセスすればいいんだけど、VirtualHost を使ってるため Host: リクエストヘッダを送らなくてはならないという罠もある。これならアクセスできる。
http://www.ff.iij4u.or.jp/~ch2/bbsmenu_ip.html
- なんとかなりそう
http://qb5.2ch.net/test/read.cgi/operate/1085495276/6666 :削除戦艦 ★ [age] :04/05/25 23:51 ID:???
わ。。。登録できた。。。(劇滝汗)<DNS登録メアド
ということでトラブルは回避できる模様(汗)
- hosts 用エントリ
http://qb5.2ch.net/test/read.cgi/operate/1085495276/479479 :とりあえずまとめた分だけ [sage] :04/05/26 06:24 ID:CMj7HiFy
とりあえずまとめた分だけ。
#でコメントアウトしてあるのはhe ローケーション
38.114.144.235 aa4.2ch.net book3.2ch.net bubble2.2ch.net off2.2ch.net that3.2ch.net travel2.2ch.net
206.223.147.230 academy3.2ch.net qb5.2ch.net qb6.2ch.net science3.2ch.net
38.114.144.180 comic4.2ch.net
64.62.178.226 etc.2ch.net
38.114.144.175 ex5.2ch.net
38.114.144.225 ex6.2ch.net
#216.218.227.66 food3.2ch.net
38.114.144.100 game6.2ch.net news11.2ch.net
206.223.147.35 headline.2ch.net stats.2ch.net
38.114.144.240 hobby5.2ch.net
38.114.144.245 hobby6.2ch.net
206.223.147.225 life5.2ch.net
38.114.137.235 live8.2ch.net live9.2ch.net
38.114.137.233 live10.2ch.net live11.2ch.net
38.114.144.145 live12.2ch.net tmp3.2ch.net
38.114.144.190 love3.2ch.net
38.114.144.230 money3.2ch.net
206.223.147.55 music4.2ch.net news13.2ch.net school3.2ch.net
38.114.144.195 news12.2ch.net
206.223.147.60 news14.2ch.net news15.2ch.net news16.2ch.net news17.2ch.net
38.114.144.85 pc5.2ch.net
#64.62.164.66 society.2ch.net
210.224.161.33 sports2.2ch.net
38.114.144.7 sports7.2ch.net
38.114.144.12 sports8.2ch.net
206.223.147.35 stats.2ch.net headline.2ch.net
38.114.144.250 tv6.2ch.net
216.218.133.82 www2.2ch.net
38.114.144.135 idol.bbspink.com
38.114.144.115 pie.bbspink.com
64.71.145.43 www.2ch.net
HTTP で xls や doc ファイルをダウンロードさせたとき、対応するアプリケーションがインストールされたマシンではブラウザ内で開いてしまう。そうさせたくない場合は、サーバで HTTP レスポンスヘッダ Content-disposition: を送出してやればよい。
既知の MIME タイプに対し [ファイルのダウンロード] ダイアログ ボックスを開く JP260519
http://support.microsoft.com/default.aspx?scid=kb;JA;260519
Content-disposition: はよく使うけど、IE に対してこんな効果があるとは知らなかった。
・・・と思ったけど、できない。html や png へのリンクを Shift を押しながらクリックしてもブラウザで普通に開いてしまう。昔 Shift キー押しながら大量のリンクを一気にクリックしてファイルを保存した記憶があるんだけどなあ。
普段メールクライアントとしてしか使っていない Netscape Communicator 4.8 を立ち上げて、Navigator で http://www.google.co.jp/ を Shift + クリックすると・・・ Save as ダイアログが出たー! これと勘違いしてたんだ。ちなみに Mozilla Firefox 0.8 ではできなかった。
既知の MIME タイプに対し [ファイルのダウンロード] ダイアログ ボックスを開く JP260519
http://support.microsoft.com/default.aspx?scid=kb;JA;260519
Web サーバーからドキュメントを提供する際、ユーザーが、そのドキュメントをブラウザで開かずに直接ディスクに保存できるよう、即座にプロンプトを表示したい場合があります。しかし Microsoft Word ("application/ms-word") などの MIME (Multipurpose Internet Mail Extensions) タイプに対する既定の動作は、Internet Explorer でドキュメントを開くようになっています。
content-disposition ヘッダを使って、この既定の動作を無効にすることができます。そのフォーマットは次のとおりです。
Content-disposition: attachment; filename=fname.ext
Content-disposition: はよく使うけど、IE に対してこんな効果があるとは知らなかった。
- クライアント側では Shift 押しながらリンククリック ・・・してもできません
クライアント側では Shift キーを押しながら該当ファイルへのリンクをクリックすれば良い。・・・と思ったけど、できない。html や png へのリンクを Shift を押しながらクリックしてもブラウザで普通に開いてしまう。昔 Shift キー押しながら大量のリンクを一気にクリックしてファイルを保存した記憶があるんだけどなあ。
- Netscape Navigator なら Shift + クリックが有効
しかし、Shift キーを押しながらクリックって、どのブラウザなら有効なんだろう? 大量のリンクをブラウザでクリックしまくって保存するなんて、右も左もわからなかった頃の所業だ。普通 wget なり Iria や Irvine 使って遊んでる間にダウンロードさせるよね。となると、20世紀の Netscape 全盛だった頃かな?普段メールクライアントとしてしか使っていない Netscape Communicator 4.8 を立ち上げて、Navigator で http://www.google.co.jp/ を Shift + クリックすると・・・ Save as ダイアログが出たー! これと勘違いしてたんだ。ちなみに Mozilla Firefox 0.8 ではできなかった。
- IE のクライアント側での対処
以下の方法ならクライアント側、というか IE 側で対処可能。でも、私の扱う要件ではそれができるクライアントや環境だけじゃないから、やっぱりサーバ側での対処が必要。なお、サーバー側から Content-Disposition ヘッダーを送信せずに、クライアント側の設定によりダイアログを表示させる場合には、以下の手順を実行します。
クライアント側のフォルダオプションで設定する方法:1. [マイ コンピュータ] をダブルクリックします。
2. [ツール] メニューの [フォルダ オプション] をクリックします。
3. [ファイル タイプ] タブをクリックします。
4. [登録されているファイル タイプ] の下から、ダイアログを表示させたいファイルの種類を選択して、[詳細設定] ボタンをクリックします。
5. [ダウンロード後に開く確認をする] (または [ダウンロード後に常に開くように設定する]) のチェックボックスをオフにし、[OK] をクリックします。
6. [登録されているファイル タイプ] の下からファイルの種類を選択して、[詳細設定] ボタンをクリックします。
※ ただし、ファイルの種類によっては上記の手順で設定できないものもあります。
2ちゃんねるの過去ログが消滅の危機に瀕している。
■ 過去ログ全部あきらめます〜
http://qb3.2ch.net/test/read.cgi/operate/1085244404/l50
全部の過去ログが消えるわけではない。しかし、unix 板などの有用な情報があった pc3.2ch.net も含まれている。これはまずい。
http://qb3.2ch.net/test/read.cgi/operate/1085244404/8
まとめ wiki ■ 過去ログ全部あきらめます〜 - いきいき Wiki
http://info.2ch.net/wiki/pukiwiki.php?%A2%A3%A1%A1%B2%E1%B5% ...
過去ログは財産。その財産が消え去ろうとしている。こりゃ大変だ、あきらめきれーん、ということで私も参戦。板毎にダウンロードするのは面倒なのでサーバまるごとダウンロードすることにした。まずは pc3.2ch.net を、あとはディスクが許す限りやることにする。
しかし、wget はapche の mod_autoindex が生成した index.html まで取得してしまって非効率的。しかも、FancyIndexing のリンクである http://food3.2ch.net/_datArea/?M=A といったものまで取得してしまっている。-A オプションで dat と tar 以外を除外しているおかげで
wget はなんだか上記のように挙動不審なので lftp を使うことにした。lftp は余計な index.html を保存したりしないので楽だ。ただ、lftp はディレクトリ構造の再現がいまいち。ルートからではなく、ダウンロードを指定したディレクトリからしか再現してくれない。つまり、以下のようにいちいちサーバ毎にディレクトリを作らなければならない。まあ、ダウンロードしようと思ってるサーバは3つくらいなのでたいした手間じゃないんだけど。
wget、lftp ともにツールとしての性質が出ていて面白い。wget はウェブサイトをまるごとダウンするので、リンクは基本的にすべてたどる。複数のウェブサーバを一気に保存したりするので、サーバのルートディレクトリからのディレクトリ構造を再現して保存する。
lftp は ftp ツールなので、ディレクトリのインデックスはデフォルトで保存しない。また、ftp サーバは http サーバに比べて容量が大きく、一つのサーバで大量のファイルをサービスする傾向があるため、複数の ftp サーバを一気にミラーすることはあまりない。その結果、ディレクトリ構造の再現は最小限になる。
Unix でも Windows でも扱いやすく、高い圧縮率を得られる tar + bzip2 を使うことにした。
わざわざ tar の出力を標準出力にして bzip2 にパイプしているのは、tar の -j, --bzip2 オプションだと bzip2 圧縮率指定 が最高圧縮の -9 すなわち --best にならなかったから。今回は1バイトでも削っておきたいので、こういう指定となった。
みみずん氏のところで一括して引き受けるという話もあるが、彼は過去何度か RAID アレイを吹っ飛ばしているので、他にも保存しておきたいところ。winny とか BitTorrent などでも配布したいし、ホスティングしてくれるならそこに置いておきたい。
■ 過去ログ全部あきらめます〜
http://qb3.2ch.net/test/read.cgi/operate/1085244404/l50
1 :倉庫番 ★ :04/05/23 01:46 ID:???
移転竹縄ですが、
板の移転はなんとか間に合わせる予定ですが、
過去ログの移転はすっぱりとあきらめてください。
もし必要な人は勝手に落として持っていってください。
memories.2ch.net に入っていない過去ログは開放します。
要望して、誰かまとめてください。開放します、
全部の過去ログが消えるわけではない。しかし、unix 板などの有用な情報があった pc3.2ch.net も含まれている。これはまずい。
http://qb3.2ch.net/test/read.cgi/operate/1085244404/8
(略)
ということで消えるかもしれないのは
life2 salami money2 pc3 love2 tv2
school2 (food3) (society) (etc) (academy2)
life4 (bg3) (qb2) (qb4) (qb3) (science2)
music3
まとめ wiki ■ 過去ログ全部あきらめます〜 - いきいき Wiki
http://info.2ch.net/wiki/pukiwiki.php?%A2%A3%A1%A1%B2%E1%B5% ...
HEとの契約が5/29で切れるので、現在PIEへのお引っ越し作戦を展開しています。
しかし、時間的都合で過去ログを放棄せざるを得ない事態となりました。
みみずんさんでも保管すべく努力していますが、
200G近くの量で間に合うのか微妙な情勢です。
そこで過去ログ保管作戦を展開中です。
過去ログは財産。その財産が消え去ろうとしている。こりゃ大変だ、あきらめきれーん、ということで私も参戦。板毎にダウンロードするのは面倒なのでサーバまるごとダウンロードすることにした。まずは pc3.2ch.net を、あとはディスクが許す限りやることにする。
- ダウンロードには lftp を使用した
wiki では GetHTMLW を紹介しているが、コマンドラインからやりたいのでまず wget を使うことにした。丸ごと取得するときはよくお世話になってるし。$ wget -r -A .dat -np http://pc3.2ch.net/_datArea/
しかし、wget はapche の mod_autoindex が生成した index.html まで取得してしまって非効率的。しかも、FancyIndexing のリンクである http://food3.2ch.net/_datArea/?M=A といったものまで取得してしまっている。-A オプションで dat と tar 以外を除外しているおかげで
Removing food3.2ch.net/_datArea/?M=A index.html@N=D since it should be rejectedと表示されて保存はなされないようだが、そもそも html をパースする時点で除外して欲しいな。
wget はなんだか上記のように挙動不審なので lftp を使うことにした。lftp は余計な index.html を保存したりしないので楽だ。ただ、lftp はディレクトリ構造の再現がいまいち。ルートからではなく、ダウンロードを指定したディレクトリからしか再現してくれない。つまり、以下のようにいちいちサーバ毎にディレクトリを作らなければならない。まあ、ダウンロードしようと思ってるサーバは3つくらいなのでたいした手間じゃないんだけど。
$ mkdir food3.2ch.net
$ cd food3.2ch.net
$ lftp -c 'mirror --verbose=3 http://life3.2ch.net/_datArea/'
wget、lftp ともにツールとしての性質が出ていて面白い。wget はウェブサイトをまるごとダウンするので、リンクは基本的にすべてたどる。複数のウェブサーバを一気に保存したりするので、サーバのルートディレクトリからのディレクトリ構造を再現して保存する。
lftp は ftp ツールなので、ディレクトリのインデックスはデフォルトで保存しない。また、ftp サーバは http サーバに比べて容量が大きく、一つのサーバで大量のファイルをサービスする傾向があるため、複数の ftp サーバを一気にミラーすることはあまりない。その結果、ディレクトリ構造の再現は最小限になる。
- ダウンロード完了後の圧縮
どんな OS でどのように利用するかわからないので、できるだけ流通性の高い圧縮形式を使うべきだ。もちろん圧縮率が高い方が望ましいが、いきなり 7zip とか rar を使うのではなく、もっと一般的な形式を使うのが望ましい。Unix でも Windows でも扱いやすく、高い圧縮率を得られる tar + bzip2 を使うことにした。
$ tar -cf - _datArea/ |bzip2 -9 >pc3.2ch.net.tar.bz2
わざわざ tar の出力を標準出力にして bzip2 にパイプしているのは、tar の -j, --bzip2 オプションだと bzip2 圧縮率指定 が最高圧縮の -9 すなわち --best にならなかったから。今回は1バイトでも削っておきたいので、こういう指定となった。
- 念のため md5 ハッシュを取得
改竄や破損を検出するため、念のため md5 を取っておくことにした。$ cd food3.2ch.net
$ find . -type f |xargs md5sum >md5sum.txt
- 再配布
アーカイブは chemistry.homeunix.com にアップロードした。みみずん氏のところで一括して引き受けるという話もあるが、彼は過去何度か RAID アレイを吹っ飛ばしているので、他にも保存しておきたいところ。winny とか BitTorrent などでも配布したいし、ホスティングしてくれるならそこに置いておきたい。
720 :外野ァァン [sage] :04/05/23 13:39 ID:vFyxZD8a
みんながダウンロードした過去ログをまた2chに差し戻す可能性はないのかしらん>倉庫番 ★
726 :倉庫番 ★ :04/05/23 13:51 ID:???
>>720
ないですー
誰かがhtml化して恒久的に公開してくれるとか、
753 : [sage] :04/05/23 14:26 ID:HgiLqlPV
>>726
戻さないんですか、残念です。
どっか公開できるサーバを立てないとダメだな・・・。
- 今回使ったトリップ
◆rnmDirfV5Eヤマダ電機宇都宮本店に行ったついでにマウスコーナーでチルトホイール付きマウスを体験してきた。体験したのは Wireless IntelliMouse Explorer の方だ。
他のモデルの候補としては、MS 製では 5ボタンの IntelliMouse Optical だろう。これはモデルチェンジしていないため、試した中では一番 IntelliMouse Explorer 3.0 に近かった。右側の第5ボタンは押しにくいので、使い物になるボタンが実質一つ減ってしまうという欠点はあるが。
あとは ロジクールの 8ボタンマウス MX-500、6ボタンマウス MX-310 だろうか。ただ、MX-500 は IntelliMouse Explorer 3.0 に比べるといまいち手の位置が安定しない。というか、8ボタンを活用できるベストな位置が見つからない。とくにホイールの上側に付いているボタンは押しにくい。8ボタンのうちのいくつかは使わない事になるだろう。また、チルトホイール付 IntelliMouse Explorer 程ではないが、ホイールクリックが IntelliMouse Explorer 3.0 に比べると少し固いのが難点だ。
MX-310 は6ボタンだが、ホイールクリックが柔らかい。また、MX500 に比べればボタンも少なくなるので、持ち方も安定しやすい。
これはかなり良くできている。左クリックボタン、右クリックボタンともに軽すぎず重すぎないクリック感。段階の付いた小気味良いホイール回転。ホイールクリックは左クリックよりもほんの少しだけ重くなるような微妙な調整。左側奥の第5ボタンは少し奥に配置されていてわずかに押しづらいものの、左側手前第4ボタンは親指の位置にぴったりで無理なく押せる。高い完成度を持っているマウスだ。
今使っているモデルは IntelliMouse Explorer としては3代目で、初代に比べて大きく改良されている。初代のモデルはもっと大きく、手に余る感じだった。初めて買ったのは2000年の3月頃だったろうか。
初代モデルは断線がひどかった。大体1年に一度、ケーブルのマウス側の根本の部分が断線する。マウスのお尻の赤い光が点いたり消えたりしたら断線の目印だ。赤い光が点いたり消えたりするという動作は、OS からは USB ケーブルを高速で抜き差しするような動作に見えるため、あっという間に Windows98 がブルースクリーンになって落ちる。光学センサーのスキャン回数を1500回から2000回に増やした IntelliMouse Explorer になってもこの症状は変わらなかった。マイクロソフトによる5年保証がついていたので、2回壊れても無償修理扱いで済んだのは不幸中の幸い。修理といっても新モデルと交換するだけだが。私が断線に悩まされなくなったのは IntelliMouse Explorer 3.0 からだ。
初代モデルは定価で10000円くらいしたが、5ボタンの快適さは欠点を補って余りあったし、5年保証は安心感があった。IntelliMouse Explorer 3.0 になって光学センサーのスキャン回数が2000回から一気に6000回に改良され、価格も実売6800円くらいに値下げされた。形も少し小さく使いやすくなっており、これは本当にお買い得なマウスだと思っていた。その良いマウスがさらにチルトホイールで進化したと期待していたのだが、今回のチルトホイール付 IntelliMouse Explorer ははっきり言って退化だ。実に残念だ。
今回の記事は IntelliMouse Explorer 3.0 とひき比べてばかりだが、それだけ良くできているということだ。IntelliMouse Explorer 3.0 から乗り換えたくなるようなマウスの登場を望んでやまない。
- チルトホイールってそんなに使う?
このマウスの特徴はなんと言ってもチルトホイール。左右に傾けることで簡単に横スクロールができること売りだ。確かに横スクロールが多い仕事では重宝するかもしれない。私はあまり横スクロールする仕事は多くないので恩恵が少ないけど。ホイールの縦方向の回転は無段階に変更されていた。これはあまり違和感は無かった。問題はホイールのクリックだ。- ホイールクリックが固すぎる
前作 IntelliMouse Explorer 3.0 に比べてホイールクリックが固すぎる。ゲームキューブのコントローラの LR ボタンの最後の押しこみ部分くらい固い。チルト機能を付けたことで、ホイールクリックを固くせざるを得なかったのだろうが、はっきり言ってこれでは使い物にならない。私は Sleipnir や Mozilla で「リンク先を新規タブで開く」や「タブを閉じる」をホイールクリックに割り当てているため、ホイールのクリック感は重要だ。- 左クリックボタン、右クリックボタンは良い仕上がり
左クリックボタン、右クリックボタンは良い。前作 IntelliMouse Explorer 3.0 と同じ良いクリック感だ。- 有線版チルトホイール付 IntelliMouse Explorer もいつの間にか発売されていた
無線は電池の心配があるし、消費電力を減らす為にマウスが勝手に性能を落とすのが嫌なので有線版の チルトホイール付 IntelliMouse Explorer の発売を待っていたのだが、いつの間にか発売されていた。- チルトホイール付 IntelliMouse Explorer はおすすめできない
チルトホイール付 IntelliMouse Explorer は出来がいまいち。これでは高い操作性を求めて IntelliMouse Explorer を買う意味がない。他のモデルを使った方がマシだ。ただ、最低でも4つ以上のボタンを備えた物が必要だ。他のモデルの候補としては、MS 製では 5ボタンの IntelliMouse Optical だろう。これはモデルチェンジしていないため、試した中では一番 IntelliMouse Explorer 3.0 に近かった。右側の第5ボタンは押しにくいので、使い物になるボタンが実質一つ減ってしまうという欠点はあるが。
あとは ロジクールの 8ボタンマウス MX-500、6ボタンマウス MX-310 だろうか。ただ、MX-500 は IntelliMouse Explorer 3.0 に比べるといまいち手の位置が安定しない。というか、8ボタンを活用できるベストな位置が見つからない。とくにホイールの上側に付いているボタンは押しにくい。8ボタンのうちのいくつかは使わない事になるだろう。また、チルトホイール付 IntelliMouse Explorer 程ではないが、ホイールクリックが IntelliMouse Explorer 3.0 に比べると少し固いのが難点だ。
MX-310 は6ボタンだが、ホイールクリックが柔らかい。また、MX500 に比べればボタンも少なくなるので、持ち方も安定しやすい。
- 今使っているマウス IntelliMouse Explorer 3.0
色々試してみたが、やはり私にとって最高のマウスは IntelliMouse Explorer 3.0 だ。{Microsoft IntelliMouse Explorer}:amazon:B00008B4BH
これはかなり良くできている。左クリックボタン、右クリックボタンともに軽すぎず重すぎないクリック感。段階の付いた小気味良いホイール回転。ホイールクリックは左クリックよりもほんの少しだけ重くなるような微妙な調整。左側奥の第5ボタンは少し奥に配置されていてわずかに押しづらいものの、左側手前第4ボタンは親指の位置にぴったりで無理なく押せる。高い完成度を持っているマウスだ。
今使っているモデルは IntelliMouse Explorer としては3代目で、初代に比べて大きく改良されている。初代のモデルはもっと大きく、手に余る感じだった。初めて買ったのは2000年の3月頃だったろうか。
初代モデルは断線がひどかった。大体1年に一度、ケーブルのマウス側の根本の部分が断線する。マウスのお尻の赤い光が点いたり消えたりしたら断線の目印だ。赤い光が点いたり消えたりするという動作は、OS からは USB ケーブルを高速で抜き差しするような動作に見えるため、あっという間に Windows98 がブルースクリーンになって落ちる。光学センサーのスキャン回数を1500回から2000回に増やした IntelliMouse Explorer になってもこの症状は変わらなかった。マイクロソフトによる5年保証がついていたので、2回壊れても無償修理扱いで済んだのは不幸中の幸い。修理といっても新モデルと交換するだけだが。私が断線に悩まされなくなったのは IntelliMouse Explorer 3.0 からだ。
初代モデルは定価で10000円くらいしたが、5ボタンの快適さは欠点を補って余りあったし、5年保証は安心感があった。IntelliMouse Explorer 3.0 になって光学センサーのスキャン回数が2000回から一気に6000回に改良され、価格も実売6800円くらいに値下げされた。形も少し小さく使いやすくなっており、これは本当にお買い得なマウスだと思っていた。その良いマウスがさらにチルトホイールで進化したと期待していたのだが、今回のチルトホイール付 IntelliMouse Explorer ははっきり言って退化だ。実に残念だ。
今回の記事は IntelliMouse Explorer 3.0 とひき比べてばかりだが、それだけ良くできているということだ。IntelliMouse Explorer 3.0 から乗り換えたくなるようなマウスの登場を望んでやまない。
Winamp のプレイリストにブラウザから mp3 ファイルのリンクをドラッグアンドドロップすると、ストリーミングで再生してくれる。デスクトップにショートカットを作るのと同じ要領。
・・・知らなかった。いままでずっと、一度 mp3 をデスクトップとかにダウンロードしてから、プレイリストに mp3 ファイルをドラッグ & ドロップしてたよ・・・。直接ブラウザで mp3 のリンクをクリックして「開く」とかもやってたけど、プレイリストがクリアされるのが嫌だったからあまり使ってなかった。
再生するたびに HTTP セッションを張りに行くから、キャッシュしてない場合は転送量が増えてしまうというデメリットはあるけど、便利だー。ちょっと富豪的でもあるね。
http://www.yamaha.co.jp/product/syndtm/p/synth/motif/mp3/iss ...
http://www.yamaha.co.jp/product/syndtm/p/synth/motif/mp3/gen ...
http://www.yamaha.co.jp/product/syndtm/p/synth/motif/mp3/p_g ...
http://www.yamaha.co.jp/product/syndtm/p/synth/s90/mp3/latin ...
http://www.yamaha.co.jp/product/syndtm/p/synth/motifes/mp3/r ...
http://www.yamaha.co.jp/product/syndtm/p/synth/motifes/mp3/o ...
今の私は、mp3 のリンクがあればとりあえずドラッグ & ドロップしたくなる。まさに「ハンマーを持った人は、目に入る物すべてが釘に見える」状態。
欲を言えば、「選択範囲の音楽ファイルへのリンクを Winamp のプレイリストに入れる」とかの機能がブラウザに付けばもっと便利になる。そんなプラグインとか拡張ってどこかにないかな。
・・・知らなかった。いままでずっと、一度 mp3 をデスクトップとかにダウンロードしてから、プレイリストに mp3 ファイルをドラッグ & ドロップしてたよ・・・。直接ブラウザで mp3 のリンクをクリックして「開く」とかもやってたけど、プレイリストがクリアされるのが嫌だったからあまり使ってなかった。
再生するたびに HTTP セッションを張りに行くから、キャッシュしてない場合は転送量が増えてしまうというデメリットはあるけど、便利だー。ちょっと富豪的でもあるね。
- Let's try!
そう聞いたら、ドラッグ & ドロップを試してみたくなるでしょ? そんなあなたと私のために mp3へのリンクをたくさん用意しておいた。心ゆくまでドラッグアンドドロップ!http://www.yamaha.co.jp/product/syndtm/p/synth/motif/mp3/iss ...
http://www.yamaha.co.jp/product/syndtm/p/synth/motif/mp3/gen ...
http://www.yamaha.co.jp/product/syndtm/p/synth/motif/mp3/p_g ...
http://www.yamaha.co.jp/product/syndtm/p/synth/s90/mp3/latin ...
http://www.yamaha.co.jp/product/syndtm/p/synth/motifes/mp3/r ...
http://www.yamaha.co.jp/product/syndtm/p/synth/motifes/mp3/o ...
今の私は、mp3 のリンクがあればとりあえずドラッグ & ドロップしたくなる。まさに「ハンマーを持った人は、目に入る物すべてが釘に見える」状態。
欲を言えば、「選択範囲の音楽ファイルへのリンクを Winamp のプレイリストに入れる」とかの機能がブラウザに付けばもっと便利になる。そんなプラグインとか拡張ってどこかにないかな。
メールシステムを活用するツールを書きたくなった。
POP3 でメールサーバにアクセスして、メールのヘッダだけ取得したい。LIST コマンドを試してみたが、ヘッダは取得できない。なにか良い方法とか便利なコマンドとか無いかなあと思い、Google で pop コマンド ヘッダ 取得を検索するとヒット。TOP というコマンドを使えばいいことがわかった。
ラスト・ワン・ホップ プロトコル「POP3」
http://www.atmarkit.co.jp/fnetwork/rensai/netpro07/netpro01. ...
http://www.ietf.org/rfc/rfc1939.txt
http://www.se.hiroshima-u.ac.jp/~isaki/rfc/rfc1939-jp.txt
7. Optional POP3 Commands
telnet で POP サーバのポート110 に接続して TOP を試してみると、以下のようにメールヘッダだけを表示してくれた。
RFC 1939では TOP コマンド使用時の本文行数指定は必須となっているが、私が利用している POP サーバでは、行数を指定しない場合は 0 で指定したときと同じ挙動を示した。POP サーバの種類とバージョンは不明だけど。
POP3 でメールサーバにアクセスして、メールのヘッダだけ取得したい。LIST コマンドを試してみたが、ヘッダは取得できない。なにか良い方法とか便利なコマンドとか無いかなあと思い、Google で pop コマンド ヘッダ 取得を検索するとヒット。TOP というコマンドを使えばいいことがわかった。
ラスト・ワン・ホップ プロトコル「POP3」
http://www.atmarkit.co.jp/fnetwork/rensai/netpro07/netpro01. ...
●TOP メッセージ番号 Line数
TOPコマンドはRETRコマンドに酷似している。RETRは単にメールメッセージ全体をダウンロードするだけだったが、TOPコマンドは、Line数を指定することでダウンロードするメールメッセージのボディーの行数を指定できる。ヘッダーは必ずダウンロードされる。0とするとメールヘッダーのみ(メールメッセージのうち、最初の空行の部分まで)となるので、主にメール一覧のみ必要としている場合などによく使用される。
- RFC 1939 post office protocol - version 3
RFC1939 によると TOP は POP3 においてはオプション扱い。http://www.ietf.org/rfc/rfc1939.txt
http://www.se.hiroshima-u.ac.jp/~isaki/rfc/rfc1939-jp.txt
7. Optional POP3 Commands
TOP msg n
Arguments:
a message-number (required) which may NOT refer to to a
message marked as deleted, and a non-negative number
of lines (required)
Restrictions:
may only be given in the TRANSACTION state
Discussion:
If the POP3 server issues a positive response, then the
response given is multi-line. After the initial +OK, the
POP3 server sends the headers of the message, the blank
line separating the headers from the body, and then the
number of lines of the indicated message's body, being
careful to byte-stuff the termination character (as with
all multi-line responses).
Note that if the number of lines requested by the POP3
client is greater than than the number of lines in the
body, then the POP3 server sends the entire message.
Possible Responses:
+OK top of message follows
-ERR no such message
Examples:
C: TOP 1 10
S: +OK
S: <the POP3 server sends the headers of the
message, a blank line, and the first 10 lines
of the body of the message>
S: .
...
C: TOP 100 3
S: -ERR no such message
telnet で POP サーバのポート110 に接続して TOP を試してみると、以下のようにメールヘッダだけを表示してくれた。
$ telnet pop.example.com 110
Trying 10.100.79.7...
Connected to pop.example.com
Escape character is '^]'.
+OK POP3 server ready
USER test063
+OK Password required for test063
PASS PASSWORD
+OK test063's maildrop has 1 messages (2052 octets)
TOP 1 0
+OK
Message-Id: <200405050800.d8e8fca2dc0f896fd7cb4cb0031ba249@example.com>
Date: 05 May 2004 17:00:00 +0900
Mime-Version: 1.0
From: "Saito Hiroaki"
<sonic64@example.com>
Subject: 5/5 2
To: "test063@example.com"
<test063@example.com>,
"sonic64@example.com"
<sonic64@example.com>
X-UIDL: 200405050800.d8e8fca2dc0f896fd7cb4cb0031ba249@example.com
Status: RO
Content-Type: text/plain; charset=iso-2022-jp
.
RFC 1939では TOP コマンド使用時の本文行数指定は必須となっているが、私が利用している POP サーバでは、行数を指定しない場合は 0 で指定したときと同じ挙動を示した。POP サーバの種類とバージョンは不明だけど。
TOP 1
+OK
Message-Id: <200405050800.d8e8fca2dc0f896fd7cb4cb0031ba249@example.com>
Date: 05 May 2004 17:00:00 +0900
Mime-Version: 1.0
From: "Saito Hiroaki"
<sonic64@example.com>
Subject: 5/5 2
To: "test063@example.com"
<test063@example.com>,
"sonic64@example.com"
<sonic64@example.com>
X-UIDL: 200405050800.d8e8fca2dc0f896fd7cb4cb0031ba249@example.com
Status: RO
Content-Type: text/plain; charset=iso-2022-jp
.
USF はニンテンドウ64の音楽演奏データファイルフォーマット。
USF Central
http://hcs.freeshell.org/usf.html
USF の再生にはドライバが必要。Winamp プラグインとして動作するドライバが 64th Note。
dextrose.com v.4 - the mother is back
http://www.dextrose.com/index.php?s=3&m=7&ng=&p= ...
64th Note はまだ公開されてから日が浅いようで、細かい機能やオプションは用意されていない。たとえばトラックごとに発音をオン・オフする機能が欲しい。
マリオ64の「かいぞくのいりえ (英語名 Dire, Dire Docks、サントラだと9曲目の『ウォーターランド』)」は、海岸にいるときはメロディのみが演奏されているが、海に入るとバックのシンセが流れ始め、海の奥深くまで行くとリズムが鳴り出すという素晴らしい演出があった。これを再現できるようになると嬉しい。
ところで、何で出力が 16bit 32KHz なんだろう? 64って32KHz までだっけ? それとも、リップするときに32KHz でリップしたとか? 64th Note が32KHz までしか対応していないとか?
USF Central
http://hcs.freeshell.org/usf.html
USF の再生にはドライバが必要。Winamp プラグインとして動作するドライバが 64th Note。
dextrose.com v.4 - the mother is back
http://www.dextrose.com/index.php?s=3&m=7&ng=&p= ...
- 試聴
マリオ64を聴いてみたが、再現性はかなり高いと思う。マリオ64のカートリッジもサントラも実家に置いてあるはずなので、あとで聴き比べをしてみる予定。64th Note はまだ公開されてから日が浅いようで、細かい機能やオプションは用意されていない。たとえばトラックごとに発音をオン・オフする機能が欲しい。
マリオ64の「かいぞくのいりえ (英語名 Dire, Dire Docks、サントラだと9曲目の『ウォーターランド』)」は、海岸にいるときはメロディのみが演奏されているが、海に入るとバックのシンセが流れ始め、海の奥深くまで行くとリズムが鳴り出すという素晴らしい演出があった。これを再現できるようになると嬉しい。
ところで、何で出力が 16bit 32KHz なんだろう? 64って32KHz までだっけ? それとも、リップするときに32KHz でリップしたとか? 64th Note が32KHz までしか対応していないとか?
* バックアップを Enterprise Manager からリストア
この記事の直リンクURL: Permlink | この記事が属するカテゴリ: [MS SQL Server] [バックアップ]
SQL Server からダンプしたファイルを Enterprise Manager を使って別のマシンにリストアするときの手順。
バックアップを取得したサーバと復元するサーバが同一の場合は、リポジトリにバックアップの一覧が表示されるためもう少し簡単になる。しかし、本番サーバのバックアップを開発環境でリストアするときなどは以下の手順が必要。
SQL Server Books Online バックアップ デバイスからバックアップを復元する方法 (Enterprise Manager)
「274188 - [SQL]PRB: 対応するログインの存在しないユーザー」
http://support.microsoft.com/default.aspx?scid=kb;JA;274188
文法は以下の通り。
バックアップを取得したサーバと復元するサーバが同一の場合は、リポジトリにバックアップの一覧が表示されるためもう少し簡単になる。しかし、本番サーバのバックアップを開発環境でリストアするときなどは以下の手順が必要。
SQL Server Books Online バックアップ デバイスからバックアップを復元する方法 (Enterprise Manager)
バックアップ デバイスからバックアップを復元するには
1. サーバー グループを展開し、サーバーを展開します。
2. [データベース] フォルダを展開し、データベースを右クリックして、[すべてのタスク] をポイントし、[データベースの復元] をクリックします。
3. [データベースとして復元] ボックスで、復元するデータベースの名前が既定の名前と異なる場合は、名前を選択するか入力します。データベースを新しい名前で復元する場合は、新しいデータベース名を入力します。
注 データベースに新しい名前を指定すると、データベース バックアップから復元されるデータベース ファイルの新しい名前が自動的に決まります。
4. [デバイスから] をクリックし、[デバイス選択] をクリックします。
5. [復元元] ボックスの [テープ] または [ディスク] をクリックし、復元元のデバイスをクリックします。
デバイスが表示されない場合は、[追加] をクリックして既存のバックアップ デバイスを追加するか、または新しいバックアップ デバイスを作成します。[データベースの復元] ダイアログ ボックスで、[内容表示] をクリックし、復元するバックアップ セットをクリックします。
以下略。
- リストア後の注意点
2003-09-09 の「データベースのリストアでユーザ情報が壊れる」で触れた不具合に注意。「274188 - [SQL]PRB: 対応するログインの存在しないユーザー」
http://support.microsoft.com/default.aspx?scid=kb;JA;274188
対応するログインの存在しないユーザーに関する問題の解決手順
上記手順で確認した対応するログインの存在しないユーザーに関して、次のコマンドを実行します。
Use Northwind
go
sp_change_users_login 'update_one', 'test', 'test'
これは、サーバー ログイン "test" を Northwind データベース ユーザー "test" に再度関連付けます。sp_change_users_login ストアド プロシージャを "auto_fix" パラメータとともに実行することで、対応するログインの存在しないユーザーすべてを更新することもできます。しかし、これは推奨されません。なぜなら、SQL Server は名前によってログインとユーザーを一致させようとするからです。ほとんどの場合には、これは期待したとおりの結果になります。しかし、誤ったログインがユーザーに関連付けられた場合、ユーザーは不正な権限を持ってしまいます。
文法は以下の通り。
sp_change_users_login 'update_one', '@UserNamePattern', '@LoginName'
ケータイが壊れた。ちょっと操作するとすぐフリーズするようになり、その後とうとう電源が入らなくなってしまった。原因は水没や落下ではない。仕事場のサーバから warning メールがたくさん来ていて、それを受けているうちに調子が悪くなってしまったようだ。まさか、ケータイにウイルスを送られた? もっと強力な防壁を用意しておけばよかった。
機種は D-03 という、まだ ボーダフォンが J-Phone だった頃の機種だ。2年前にも故障したのだが、そのときは機種変更せずに同じ機種に交換してもらったので、今回故障したのは2台目だ。一台目を購入したのは 2000年の9月。フリッパー型で薄く、ジーンズのお尻のポケットにちょうど良く収まるところが気に入っていた。でも、そろそろ換え時かなー。
http://www.vodafone.jp/japanese/products/domestic.html
うーん、なんだか欲しいと思わせる端末がないなあ。高機能じゃなくても良いんだよね。海外になんか持っていかないし、テレビなんて見られなくていいし。メールをたくさん受けられて、マナーモードを細かくカスタマイズできる奴が良いんだけど、ウェブで性能チェックするのは大変だな。やっぱり店頭で店員に相談した方が良いな。
お、新機種の情報がある。
ボーダフォン 2004年夏モデル
http://www.vodafone.jp/japanese/2004summer/
「コントロールパッド」を搭載する「V401D」
http://k-tai.impress.co.jp/cda/article/news_toppage/18773.ht ...
三菱のファンというわけじゃないけど、V401D のデザインは G-SHOCK みたいで結構いいな。特にシルバーはカッコイイ。でも、発売は数か月後か。そうだな、とりあえず今回も修理を手配して、数か月して潤沢に V401D が出回ったら機種変更しようかな。
機種は D-03 という、まだ ボーダフォンが J-Phone だった頃の機種だ。2年前にも故障したのだが、そのときは機種変更せずに同じ機種に交換してもらったので、今回故障したのは2台目だ。一台目を購入したのは 2000年の9月。フリッパー型で薄く、ジーンズのお尻のポケットにちょうど良く収まるところが気に入っていた。でも、そろそろ換え時かなー。
- 新しいケータイは何がいいかなー
ボーダフォン 製品情報http://www.vodafone.jp/japanese/products/domestic.html
うーん、なんだか欲しいと思わせる端末がないなあ。高機能じゃなくても良いんだよね。海外になんか持っていかないし、テレビなんて見られなくていいし。メールをたくさん受けられて、マナーモードを細かくカスタマイズできる奴が良いんだけど、ウェブで性能チェックするのは大変だな。やっぱり店頭で店員に相談した方が良いな。
お、新機種の情報がある。
ボーダフォン 2004年夏モデル
http://www.vodafone.jp/japanese/2004summer/
「コントロールパッド」を搭載する「V401D」
http://k-tai.impress.co.jp/cda/article/news_toppage/18773.ht ...
三菱のファンというわけじゃないけど、V401D のデザインは G-SHOCK みたいで結構いいな。特にシルバーはカッコイイ。でも、発売は数か月後か。そうだな、とりあえず今回も修理を手配して、数か月して潤沢に V401D が出回ったら機種変更しようかな。
急遽 iso を CD に焼く必要に迫られた。しかし、使い慣れて環境も整備されたメインマシンは使えない。利用可能なのは、サーバ用としてしか設定されていないデスクトップマシンだ。
このマシンを購入したときには、CD-RW ドライブ付属のライティングソフトがインストールされていたんだけど、OS 再インストール時に消えてしまった。もう一度インストールしても良いのだが、ソフトが入ったメディアを探す手間を省きたいので、フリーのライティングソフトをウェブで探してみる。iso が焼けて、CD-RW を扱えるなら何でもいい。
Google で フリー CD-R ライティングソフトを検索したところ、2ch まとめ系 wiki を発見。
☆★☆フリーのライティングソフト!!!☆★☆ - FrontPage
http://wiki.fdiary.net/2chcdr/
そこで紹介されていた burnatonce というソフトをダウンロードして使ってみた。非常に素っ気ないインターフェイスではあるが、機能は十分。おかげでばっちり焼くことができた。試してないけど、 DVD も焼くことができるようだ。
burnatonce
http://www.burnatonce.com/
追記。
使い方のメモを 2004-08-26「CD/DVD ライティングソフト burnatonce の使い方」に書いた。
このマシンを購入したときには、CD-RW ドライブ付属のライティングソフトがインストールされていたんだけど、OS 再インストール時に消えてしまった。もう一度インストールしても良いのだが、ソフトが入ったメディアを探す手間を省きたいので、フリーのライティングソフトをウェブで探してみる。iso が焼けて、CD-RW を扱えるなら何でもいい。
Google で フリー CD-R ライティングソフトを検索したところ、2ch まとめ系 wiki を発見。
☆★☆フリーのライティングソフト!!!☆★☆ - FrontPage
http://wiki.fdiary.net/2chcdr/
そこで紹介されていた burnatonce というソフトをダウンロードして使ってみた。非常に素っ気ないインターフェイスではあるが、機能は十分。おかげでばっちり焼くことができた。試してないけど、 DVD も焼くことができるようだ。
burnatonce
http://www.burnatonce.com/
追記。
使い方のメモを 2004-08-26「CD/DVD ライティングソフト burnatonce の使い方」に書いた。
今日アクセス解析ページを見ていたら、2004年1月分の記録が無くなっていることに気づいた。
このページに付けている shinobi アクセス解析は、データを4か月分しか保存してくれない。このため、2004年1月分のカウントが消えてしまった。仕方がないので、アクセスカウンタを付けることにした。ただ、一般ユーザはそのページのヒット数なんて気にしないだろうから、管理者だけが数字を閲覧できるタイプのカウンタで十分だ。
この程度の要件ならすぐ作れそうと思ったので、アクセスカウンタスクリプトを自作してみた。単に数を数えられればそれでいいので、かなり簡素。flock による排他制御は考慮したけど、ファイル I/O エラー時の処理を組み込んでいないなど、かなり思い切った実装。
カウント時の画像は、perl スクリプト中に png をシリアライズして埋め込んでおく。png はサイズを小さくするために、1 ピクセル * 1ピクセルの 白黒画像とし、url エンコードして文字列化する。base64 でもいいけど、デコードルーチンが url エンコードに比べて長いし、Perl モジュールも標準で入ってない環境があるので今回は見送り。
url エンコード。スペースを + に変換する部分は省略。
スクリプトに組み込み。
html に記述して準備完了。
最後に、shinobi がいままでカウントしてくれた Page View を count.dat に記述して完了。
閲覧は http://sonic64.hp.infoseek.co.jp/cgi-bin/c.cgi/view から。infoseek の広告が入っちゃってるけど、まあ気にしないことにする。
このページに付けている shinobi アクセス解析は、データを4か月分しか保存してくれない。このため、2004年1月分のカウントが消えてしまった。仕方がないので、アクセスカウンタを付けることにした。ただ、一般ユーザはそのページのヒット数なんて気にしないだろうから、管理者だけが数字を閲覧できるタイプのカウンタで十分だ。
この程度の要件ならすぐ作れそうと思ったので、アクセスカウンタスクリプトを自作してみた。単に数を数えられればそれでいいので、かなり簡素。flock による排他制御は考慮したけど、ファイル I/O エラー時の処理を組み込んでいないなど、かなり思い切った実装。
- ifame によるテキストアクセスカウンタ
iframe で呼び出して使う。アクセスされればされただけ計数する。#!/usr/bin/perl
open(OUT, '+< /home/hiroaki/cgi-data/count.dat');
flock(OUT, 2);
my $cnt = <OUT>;
++$cnt;
seek(OUT, 0, 0);
print OUT $cnt;
truncate(OUT, tell(OUT));
close(OUT);
print "Content-Type: text/plain\n\n$cnt\n";
- img src で呼び出せる画像カウンタ
iframe よりも img src で呼び出してカウントできる画像カウンタの方がいいかな。カウント時は画像を返し、数字の閲覧時はテキストを返すカウンタにしよう。0から9までの数字部品を呼び出して数字文字列を組み上げるタイプの画像カウンタは手間がかかるので、カウント時はごく小さな単一の画像を返すだけとする。要するに Web バグと呼ばれるものだ。カウント時の画像は、perl スクリプト中に png をシリアライズして埋め込んでおく。png はサイズを小さくするために、1 ピクセル * 1ピクセルの 白黒画像とし、url エンコードして文字列化する。base64 でもいいけど、デコードルーチンが url エンコードに比べて長いし、Perl モジュールも標準で入ってない環境があるので今回は見送り。
url エンコード。スペースを + に変換する部分は省略。
$ cat count.png |perl -pe 's/([^\w ])/"%".unpack("H2", $1)/eg;'
%89PNG%0d%0a%1a%0a%00%00%00%0dIHDR%00%00%00%01%00%00%00%01%01%00%00%00%007n%f9%24%00%00%00%0aIDAT%18%d3ch%00%00%00%82%00%81%a7%01%ba%10%00%00%00%00IEND%aeB%60%82
スクリプトに組み込み。
#!/usr/bin/perl
open(OUT, '+< /home/hiroaki/cgi-data/count.dat');
flock(OUT, 2);
my $cnt = <OUT>;
++$cnt;
seek(OUT, 0, 0);
print OUT $cnt;
truncate(OUT, tell(OUT));
close(OUT);
my $img = '%89PNG%0d%0a%1a%0a%00%00%00%0dIHDR%00%00%00%01%00%00%00%01%01%00%00%00%007n%f9%24%00%00%00%0aIDAT%18%d3ch%00%00%00%82%00%81%a7%01%ba%10%00%00%00%00IEND%aeB%60%82';
$img =~ s/%([0-9A-Fa-f][0-9A-Fa-f])/pack('H2', $1)/eg;
print "Content-Type: img/png\n\n$img\n";
html に記述して準備完了。
<img src="http://sonic64.hp.infoseek.co.jp/cgi-bin/c.cgi" height="0" width="0" alt="">
- 閲覧機能を組み込む
あ、そうだ。やっぱり数字の閲覧もできた方がいいな。別の cgi にしてもいいけど、この程度だったら path_info か Query String で分岐させるやり方で十分だね。#!/usr/bin/perl
my $cnt_file = '/home/hiroaki/cgi-data/count.dat';
my %result;
if (defined($ENV{PATH_INFO}) and ($ENV{PATH_INFO} eq '/view')) {
open(CNT, $cnt_file);
flock(CNT, 1);
my $cnt = <CNT>;
close(CNT);
$result{body} = $cnt;
$result{header} = 'text/plain';
} else {
open(CNT, "+< $cnt_file");
flock(CNT, 2);
my $cnt = <CNT>;
++$cnt;
seek(CNT, 0, 0);
print CNT $cnt;
truncate(OUT, tell(OUT));
close(CNT);
my $img = '%89PNG%0d%0a%1a%0a%00%00%00%0dIHDR%00%00%00%01%00%00%00%01%01%00%00%00%007n%f9%24%00%00%00%0aIDAT%18%d3ch%00%00%00%82%00%81%a7%01%ba%10%00%00%00%00IEND%aeB%60%82';
$img =~ s/%([0-9A-Fa-f][0-9A-Fa-f])/pack('H2', $1)/eg;
$result{body} = $img;
$result{header} = 'image/png';
}
printf("Content-Type: %s\n\n%s", $result{header}, $result{body});
- 数字閲覧時も計数した方が良いかなあ
一般的なカウンタは、ページ管理者がカウンタの数字を閲覧する時にも計数するのが普通のようだ。それに習って、このカウンタも数字閲覧時にもカウントするようにした。また、キャッシュされないようにする HTTP レスポンスヘッダも出力するようにした。#!/usr/local/bin/perl
my $cnt_file = '../dat/count.dat';
my %result;
open(CNT, "+< $cnt_file");
flock(CNT, 2);
my $cnt = <CNT>;
++$cnt;
seek(CNT, 0, 0);
print CNT $cnt;
truncate(OUT, tell(OUT));
close(CNT);
if (defined($ENV{PATH_INFO}) and ($ENV{PATH_INFO} eq '/view')) {
$result{body} = $cnt;
$result{header} = 'text/plain';
} else {
my $img = '%89PNG%0d%0a%1a%0a%00%00%00%0dIHDR%00%00%00%01%00%00%00%01%01%00%00%00%007n%f9%24%00%00%00%0aIDAT%18%d3ch%00%00%00%82%00%81%a7%01%ba%10%00%00%00%00IEND%aeB%60%82';
$img =~ s/%([0-9A-Fa-f][0-9A-Fa-f])/pack('H2', $1)/eg;
$result{body} = $img;
$result{header} = 'image/png';
}
my $response = <<"__HERE__";
Cache-Control: no-cache
Pragma: no-cache
__HERE__
$response .= sprintf("Content-Type: %s\n\n%s", $result{header}, $result{body});
print $response;
最後に、shinobi がいままでカウントしてくれた Page View を count.dat に記述して完了。
閲覧は http://sonic64.hp.infoseek.co.jp/cgi-bin/c.cgi/view から。infoseek の広告が入っちゃってるけど、まあ気にしないことにする。
winny.info別館で、winny 配布ファイルと実行ファイルのハッシュを掲載していた。
はてなダイアリー - winny.info別館
http://d.hatena.ne.jp/winny/20040514#1084533557
RedHat9 ftp 版をはじめとする Linux の iso イメージの入手と配布に winny を使ったことがある。公開直後で ftp サイトが混雑しているせいか、それとも私の契約している回線が不安定なのかはわからないが、何度ダウンロードしても md5 が一致しないという症状に見舞われたことがあり、winny でも配布していると聞いて使ったのだ。
私はダウンロードしたツール類は極力保存しておくようにしている。保存先ディレクトリを検索してみると、winny の配布ファイルがいくつかヒットした。47氏の公式サイト以外からは winny をダウンロードした記憶がないので、すべてオリジナルのはずだ。
私はこれらのファイルを配布するつもりはないし、著作権侵害行為を助長するつもりもない。単にオリジナルの winny とはどういうものであるかを判別するために、ハッシュやファイルサイズを記録しておく。メモなので「これを信用するかはあなた次第」だ。
ファイルのプロパティでハッシュ値を確認・比較「HashTab Shell Extension」
http://www.forest.impress.co.jp/article/2004/04/13/hashtab.h ...
実行ファイル: Winny.exe 663,040 バイト
実行ファイル: Winny.exe 655,360 バイト
実行ファイル: Winny.exe 653,824 バイト
実行ファイル: Winny.exe 243,200 バイト
はてなダイアリー - winny.info別館
http://d.hatena.ne.jp/winny/20040514#1084533557
Tipsさんの家宅捜査を受け、ハイ初さんを初めとした関連サイトが続々と自主的に閉鎖されています。ここでは言論封殺だなどと主張はしませんが、少なくともWinnyのバイナリの入手手段が限られてしまったことは確かです。
有志によりバイナリ配布を行うサイトも出てきていますが、あくまで可能性として、何らかの手を加えられたバイナリと差し替えられている可能性も考えられます。
私はこれまでと同様にバイナリの配布をする予定はありませんが、その代わりとして私が保持しているWinny2 b7.1のハッシュ値を掲載しておきます。
これを信用するかはあなた次第。
RedHat9 ftp 版をはじめとする Linux の iso イメージの入手と配布に winny を使ったことがある。公開直後で ftp サイトが混雑しているせいか、それとも私の契約している回線が不安定なのかはわからないが、何度ダウンロードしても md5 が一致しないという症状に見舞われたことがあり、winny でも配布していると聞いて使ったのだ。
私はダウンロードしたツール類は極力保存しておくようにしている。保存先ディレクトリを検索してみると、winny の配布ファイルがいくつかヒットした。47氏の公式サイト以外からは winny をダウンロードした記憶がないので、すべてオリジナルのはずだ。
私はこれらのファイルを配布するつもりはないし、著作権侵害行為を助長するつもりもない。単にオリジナルの winny とはどういうものであるかを判別するために、ハッシュやファイルサイズを記録しておく。メモなので「これを信用するかはあなた次第」だ。
- ハッシュ確認には HashTab Shell Extension を使用
各種ハッシュの確認には、windowsの ファイルのプロパティにハッシュを表示してくれる HashTab Shell Extension を使用した。なお、HashTab Shell Extension はハッシュのアルファベットは大文字で表示するが、私は小文字が好きなので xyzzy の文字列変換機能を使って小文字化してある。ファイルのプロパティでハッシュ値を確認・比較「HashTab Shell Extension」
http://www.forest.impress.co.jp/article/2004/04/13/hashtab.h ...
- Winny v2.0b7.1 ( 03/11/16 )
配布アーカイブ: Winny2b71.zip 645,502 バイトmd5: 205d53ad7f14816a3a3d12fd14bc4338
sha-1: 34eefeb00cec94980fff57ff47a65ea635226188
crc-32: 1545ab7a
実行ファイル: Winny.exe 663,040 バイト
md5: 0d53d1782fb2009f953fa68b4ff7ef2d
sha-1: 6a1c80c2fde37f43d7282e610fdaa6e7f8af203d
crc-32: 4fce331e
- Winny v2.0b6.6 ( 03/09/13 )
配布アーカイブ: Winny2b66.zip 637,742 バイトmd5: 085372a5f7f42e141c09af135cb652cc
sha-1: a252f97196c2b327b322b7fba6b94c3f6171ecad
crc-32: a8fc441a
実行ファイル: Winny.exe 655,360 バイト
md5: fe2641850a2f891cbf4b7ccc7080c713
sha-1: 03f281cdbad5b4fa27336388a6bfb3384040c3ae
crc-32: 813fdc56
- Winny v2.0b6.47 ( 03/09/03 )
配布アーカイブ: Winny2b647.zip 636,362 バイトmd5: 23559a89da1b038fb1c158116cd2ec20
sha-1: 618b1e7dfd70923dc26bed6756a45b890ba50a72
crc-32: 66acd1dd
実行ファイル: Winny.exe 653,824 バイト
md5: 3a9c94ca428e0b2bf9d372487263c749
sha-1: 41149e69419fadb615cd853e6b9227b2cd100789
crc-32: 609455fa
- Winny v1.14 (2003/04/05)
配布アーカイブ: Winny114.zip 233,106 バイトmd5: 1268bda1ec55f4439beef1b1a0c06546
sha-1: ba35f6a8ace70d2b8efb80841e9270ce84e86ff8
crc-32: cfce0dc6
実行ファイル: Winny.exe 243,200 バイト
md5: ddd8a25a37b93915c6e9f823da8e1a75
sha-1: 97b6aa917623b0fe0fa3805067a37207d1ced7a8
crc-32: d07a9838
著者の一人である青木さんの「あおきにっき つっこみつき」に情報があった。
http://i.loveruby.net/d/20040512.html#p02
『Rubyレシピブック』 2800 円で 5 月 28 日配本だそうです。配本つーことは、本屋にはもうちょい後にならぶ?あ、31 日出版となってるな。
とにかくそのあたりです!
Google で Ruby レシピブックを検索してもほとんど情報が無い。amazon や bk1 のデータベースにもまだ登録されていないようだ。たぶん上の紹介リンクも置換前の文字列のままだろう。データが登録されれば表示されるようになるだろうけど。唯一情報があったのが、ソフトバンクパブリッシングのサイト。
SBPストア Rubyレシピブック 268の技
http://store.sbpnet.jp/bm_detail.asp?sku=4797324295
RubyのTipsを満載したレシピ集。Rubyを使いこなすうえでのさまざまなテクニックを幅広く解説。様々な難問を即解決!
現時点では詳細な内容や目次の情報がほとんど無いが、Perl クックブックのようなノウハウ集だと私は想像している。Ruby はあまり慣れていないので、ぜひ手元に置いておきたい。2800円という値段も手頃だし。
- 2004年5月17日追記
あおきにっきつっこみつきに追加情報があった。『Rubyレシピブック』内容紹介
http://i.loveruby.net/d/20040516.html#p04
カワチにハーゲンダッツメロンが陳列されるようになったので一つ買ってきた。税込み207円。2004-04-27 で食べた「ハーゲンダッツ オレンジ」に続く季節限定もの。ハーゲンダッツ公式サイトによると、「ハーゲンダッツ メロン」の発売日は2004年4月26日なので、もうかなり出回っているようだ。
フルーツのおいしさをたっぷりと楽しめる 春夏の季節限定ミニカップ2種 『オレンジ』 『メロン』全国で発売
http://www.haagen-dazs.co.jp/contents/news/0402_ss_mini.html
さあ、おやつの時間だ。2時間たつと、固さもほどよく柔らかくなっている。良い感じだ。蓋を取ってビニールの覆いを外す。スプーンでひとすくい口に運ぶと、まずメロンの風味が口中を支配する。この時点では、アイスクリームの味はまだ前面には出てこない。果肉を噛みしめると、果汁がじゅわっと溢れる。喉が乾くような、メロンの強烈な風味だ。果肉とアイスクリームを飲み込んでから、アイスクリームの濃厚な風味が主張を始める。
ハーゲンダッツ オレンジよりもハーゲンダッツ メロンの方がハーゲンダッツの濃厚な味に合っている。甘みの少ないメロンを使ったとしても、アイスクリームの味でそれを補うことができるし。でもオレンジやメロンよりも、やっぱりバニラの方が好き。
フルーツのおいしさをたっぷりと楽しめる 春夏の季節限定ミニカップ2種 『オレンジ』 『メロン』全国で発売
http://www.haagen-dazs.co.jp/contents/news/0402_ss_mini.html
同『メロン』は、みずみずしく上品な甘みと香りを持つ、果肉がオレンジ色のメロンの果汁と果肉をたっぷり使用した、ぜいたくな味わいのアイスクリームです。メロン果汁をたっぷり使用したアイスクリームに、甘く熟したメロン果肉を混ぜ込みました。メロンの豊かな香りと、甘く熟した果肉の食感が楽しめます。果汁・果肉22%。
同製品は昨年、春夏限定商品として発売し、クリーミーで香り豊かなメロンアイスクリームとしてご好評をいただいた人気フレーバーです。
- おやつにハーゲンダッツ
ハーゲンダッツのミニカップは店頭ではごく低温の環境で保存されているため、買ってきてすぐに食べたのでは滑らかな食感を楽しめない。そこで、家庭用冷凍庫で2時間ほど置いて、柔らかくなるのを待つことにする。2時間待つとちょうど3時のおやつの時間だし。すぐ食べたいなら電子レンジで数十秒加熱するという手もある。ただ、風情が台無しになるので私はやらない。さあ、おやつの時間だ。2時間たつと、固さもほどよく柔らかくなっている。良い感じだ。蓋を取ってビニールの覆いを外す。スプーンでひとすくい口に運ぶと、まずメロンの風味が口中を支配する。この時点では、アイスクリームの味はまだ前面には出てこない。果肉を噛みしめると、果汁がじゅわっと溢れる。喉が乾くような、メロンの強烈な風味だ。果肉とアイスクリームを飲み込んでから、アイスクリームの濃厚な風味が主張を始める。
ハーゲンダッツ オレンジよりもハーゲンダッツ メロンの方がハーゲンダッツの濃厚な味に合っている。甘みの少ないメロンを使ったとしても、アイスクリームの味でそれを補うことができるし。でもオレンジやメロンよりも、やっぱりバニラの方が好き。
2004-05-08 の 「lftp を使った ftp ミラーリングと便利機能」で試してみたいなと書いた FTP over HTTP proxy を使ってみた。以下、2004-05-08 から引用。
要するに ftp の proxy 越え。
lftp 起動後にコマンドでセットしたり、/etc/lftp.conf または ~/.lftprc または ~/.lftp/rc に書いておくこともできる。ただ、apt や wget、lynx なども同じ環境変数を見るので、環境変数にセットしておいた方がツールごとに設定しなおさなくて済むので楽だ。
ftp://ring.gr.jp/ に FTP Over HTTP Proxy で接続したいときは、hftp://ring.gr.jp/ と指定すればいい。
まずは cygwin 環境。HTTP セッションの流れを詳細に見たいので、-d を付けて lftp を起動。
「--->」がサーバへ送っているデータ、<--- がサーバから返されたデータだ。うまくログインして PUT できている。なるほど、ftp アカウントのパスワードは Authorization ヘッダに入れて squid に送るわけだ。成功時の応答は HTTP レスポンス 201 か。普段は webdav なども使わないので 200番台は 200 OK 以外は見かけないけど、こんなコードがあったのか。
うまくいかない。HTTP の 400番が返ってきてしまう。上記ではわからないが、実際には 400 が返ってきた後 lftp はリトライするためのカウントダウンに入ってしまい、何度でもやり直そうとしていた。仕方がないので CTRL + C で止めた。Interrupt はそのときの表示だ。
ぱっと見では同じリクエストを送ってるようなんだけどなあ。Content-length が違うのは、別のファイルを送っているからだけど、これが影響するとは思えないし。やっぱり lftp のバージョンが古いのが良くないのかな。 確か lftp は2003年末くらいにセキュリティホールが見つかっていたはずだし、最新版を入れてみるか。
トラブル無くインストール完了。では再び lftp。
あ、できた。やっぱりバージョンが古かったのが良くなかったのかな。lftp の ChangeLog を見ても今回のトラブルに関連する修正履歴は見つけられなかったけど、使えるようになったので深く考えないことにしよう。個人的な用途にしか使わないだろうしね。
FTP over HTTP proxy support は、squid を http と ftp の proxy サーバとして使用している環境で有用だろう。IE や Mozilla などのブラウザからは proxy を使って ftp サイトにアクセスできるのに、windows の ffftp をはじめとする ftp クライアントでは proxy を利用できない、という現象がある。これは ffftp などが FTP over HTTP proxy に対応していないために起こる。lftp ならこれを解決できるようだ。
要するに ftp の proxy 越え。
- ftp プロキシと http プロキシの指定
まずは lftp が使うプロキシサーバを指定する。lftp は環境変数 ftp_proxy http_proxy https_proxy にセットされている値を proxy として使う。私は .bash_profile に以下のように記述している。export http_proxy=http://10.24.1.242:24201/
export ftp_proxy=http://10.24.1.242:24201/
export https_proxy=http://10.24.1.242:24201/
lftp 起動後にコマンドでセットしたり、/etc/lftp.conf または ~/.lftprc または ~/.lftp/rc に書いておくこともできる。ただ、apt や wget、lynx なども同じ環境変数を見るので、環境変数にセットしておいた方がツールごとに設定しなおさなくて済むので楽だ。
- lftp で FTP Over HTTP Proxy を使うときは hftp
lftp は hftp スキームで URL を指定すると FTP Over HTTP Proxy を使う、という動きをするようだ。ftp://ring.gr.jp/ に FTP Over HTTP Proxy で接続したいときは、hftp://ring.gr.jp/ と指定すればいい。
- cygwin 環境の lftp 2.6.10 なら問題なく動いた
無料ホームページスペースの geocities に FTP Over HTTP Proxy で接続してみる。まずは cygwin 環境。HTTP セッションの流れを詳細に見たいので、-d を付けて lftp を起動。
$ lftp -d -u USER_ID,PASSWORD hftp://ftp.geocities.co.jp
lftp USER_ID@ftp.geocities.co.jp:~> put test.txt
---- Connecting to proxy 10.24.1.242 (10.24.1.242) port 24201
---- Sending request...
---> PUT ftp://USERID@ftp.geocities.co.jp/test.txt;type=i HTTP/1.1
---> Host: ftp.geocities.co.jp
---> User-Agent: lftp/2.6.10
---> Content-length: 192
---> Last-Modified: Wed, 15 May 2002 10:09:52 GMT
---> Authorization: Basic PASSWORD
---> Connection: close
--->
<--- HTTP/1.1 201 Created
<--- Server: Cache/2.4.7
<--- Mime-Version: 1.0
<--- Date: Thu, 13 May 2004 09:35:44 GMT
<--- Content-Type: text/html
<--- Content-Length: 341
<--- Expires: Thu, 13 May 2004 09:35:44 GMT
<--- X-Squid-Error: ERR_FTP_PUT_CREATED 0
<--- X-Cache: MISS from unknown
<--- Age: 3
<--- Connection: close
<--- Via: HTTP/1.0 hostname
<---
---- Closing HTTP connection
192 bytes transferred in 4 seconds (55b/s)
「--->」がサーバへ送っているデータ、<--- がサーバから返されたデータだ。うまくログインして PUT できている。なるほど、ftp アカウントのパスワードは Authorization ヘッダに入れて squid に送るわけだ。成功時の応答は HTTP レスポンス 201 か。普段は webdav なども使わないので 200番台は 200 OK 以外は見かけないけど、こんなコードがあったのか。
- TurboLinux 6.5 Server の lftp は 2.3.7 はうまく動かない
次は TurboLinux Server 6.5 で試す。cygwin 環境があるマシンは24時間稼働ではないので、できれば 24時間稼働で cron も使える Linux マシンで lftp を使いたい。ただ、このマシンにインストールされている lftp はちょっと古めのバージョンだ。$ lftp -d -u USER_ID,PASSWORD hftp://ftp.geocities.co.jp
lftp USER_ID@ftp.geocities.co.jp:~> put test.txt
---- Connecting to proxy 10.24.1.242 (10.24.1.242) port 24201
---- Sending request...
---> PUT ftp://USERID@ftp.geocities.co.jp/test.txt;type=i HTTP/1.1
---> Host: ftp.geocities.co.jp
---> User-Agent: lftp/2.3.7
---> Content-length: 903
---> Last-Modified: Fri, 20 Feb 2004 13:20:04 GMT
---> Authorization: Basic PASSWORD
---> Connection: close
--->
**** Hit EOF while fetching headers
---- Closing HTTP connection
---- Connecting to proxy 10.24.1.242 (10.24.1.242) port 24201
---- Sending request...
---> HEAD ftp://USERID@ftp.geocities.co.jp/test.txt;type=i HTTP/1.1
---> Host: ftp.geocities.co.jp
---> User-Agent: lftp/2.3.7
---> Authorization: Basic PASSWORD
---> Connection: keep-alive
--->
<--- HTTP/1.1 400 Unsupported FTP Method
<--- Date: Thu, 13 May 2004 09:35:04 GMT
<--- Via: HTTP/1.1 hostname
<--- Connection: close
<--- Cache-Control: no-store
<--- Content-Type: text/html
<--- Content-Language: en
<--- Content-Length: 353
<---
---- Closing HTTP connection
copy: put rolled back to 0, seeking get accordingly
Interrupt
うまくいかない。HTTP の 400番が返ってきてしまう。上記ではわからないが、実際には 400 が返ってきた後 lftp はリトライするためのカウントダウンに入ってしまい、何度でもやり直そうとしていた。仕方がないので CTRL + C で止めた。Interrupt はそのときの表示だ。
ぱっと見では同じリクエストを送ってるようなんだけどなあ。Content-length が違うのは、別のファイルを送っているからだけど、これが影響するとは思えないし。やっぱり lftp のバージョンが古いのが良くないのかな。 確か lftp は2003年末くらいにセキュリティホールが見つかっていたはずだし、最新版を入れてみるか。
- lftp 3.0.3 をインストールして再挑戦
ミラーサイトから tar ball を取ってきてコンパイル & インストール。tar zxvf lftp-3.0.3.tar.gz
cd lftp-3.0.3/
./configure
make
su
make install
トラブル無くインストール完了。では再び lftp。
$ lftp -d -u USER_ID,PASSWORD hftp://ftp.geocities.co.jp
lftp USER_ID@ftp.geocities.co.jp:~> put test.txt
---- Connecting to proxy 10.24.1.242 (10.24.1.242) port 24201
---- Sending request...
---> PUT ftp://USER_ID@ftp.geocities.co.jp/test.txt;type=i HTTP/1.1
---> Host: ftp.geocities.co.jp
---> User-Agent: lftp/3.0.3
---> Content-length: 903
---> Last-Modified: Fri, 20 Feb 2004 13:20:04 GMT
---> Authorization: Basic PASSWORD
---> Connection: close
--->
<--- HTTP/1.1 201 Created
<--- Server: Cache/2.4.7
<--- Mime-Version: 1.0
<--- Date: Thu, 13 May 2004 10:07:29 GMT
<--- Content-Type: text/html
<--- Content-Length: 341
<--- Expires: Thu, 13 May 2004 10:07:29 GMT
<--- X-Squid-Error: ERR_FTP_PUT_CREATED 0
<--- X-Cache: MISS from unknown
<--- Age: 4
<--- Connection: close
<--- Via: HTTP/1.0 hostname
<---
---- Closing HTTP connection
903 bytes transferred in 4 seconds (231b/s)
あ、できた。やっぱりバージョンが古かったのが良くなかったのかな。lftp の ChangeLog を見ても今回のトラブルに関連する修正履歴は見つけられなかったけど、使えるようになったので深く考えないことにしよう。個人的な用途にしか使わないだろうしね。
- lftp --help の日本語訳
--help だけは日本語化されてたのでメモ。man は残念ながら英語版のみだった。$ lftp --help
使い方: lftp [OPTS] <site>
`lftp' は rc ファイルを読み込んだあと最初に実行されるコマンドです
-f <file> ファイルで指定されたコマンドを実行し終了する
-c <cmd> コマンドを実行して終了する
--help このヘルプを表示して終了する
--version lftp のバージョンを表示して終了する
他のオプションは `open' コマンドのものと同じです
-e <cmd> 選択のすぐあとに指定のコマンドを実行する
-u <user>[,<pass>] 認証で指定のユーザ/パスワードを使う
-p <port> 接続に指定のポートを使う
<site> ホスト名、URL あるいはブックマーク名
県庁前通りのワシントンホテルの西側や、宇都宮東武ホテルグランデの北側あたりの飲み屋街にある、餃子のお店。ピンク色の派手な看板が目印だ。店はとても狭く、カウンターに6席くらい。奥にも何席かあったようだが、おそらく10人くらいで満席になるような狭さだ。
メニューは餃子しかない。焼き餃子、揚げ餃子、持ち帰り用の餃子、いずれも6個入り税込み250円。ビールやご飯は無いが、少食な私にはかえって好都合だ。
焼き餃子を一人前注文した。ごま油を使って焼いているので、とても香ばしく食欲をそそる良い香りだ。しばらくして目の前に餃子が供された。目の前に皿がおかれると、いよいよ香りが強くなる。おいしそう。ひとつ口に運ぶと、にんにくや生姜の鮮烈な香りと豚肉の旨み、そしてごま油の香りが一気に広がる。旨い。パリパリで熱々な皮も良い。醤油だけで食べたり、醤油とラー油を組み合わせて食べたりしたが、どの味付けでも美味しかった。私は宇都宮市民だが、実は餃子よりも小籠包の方が好きで餃子専門店にもあまり行ったりしないのだが、これはこれで美味しいね。
住所は栃木県宇都宮市本町2-5。
メニューは餃子しかない。焼き餃子、揚げ餃子、持ち帰り用の餃子、いずれも6個入り税込み250円。ビールやご飯は無いが、少食な私にはかえって好都合だ。
焼き餃子を一人前注文した。ごま油を使って焼いているので、とても香ばしく食欲をそそる良い香りだ。しばらくして目の前に餃子が供された。目の前に皿がおかれると、いよいよ香りが強くなる。おいしそう。ひとつ口に運ぶと、にんにくや生姜の鮮烈な香りと豚肉の旨み、そしてごま油の香りが一気に広がる。旨い。パリパリで熱々な皮も良い。醤油だけで食べたり、醤油とラー油を組み合わせて食べたりしたが、どの味付けでも美味しかった。私は宇都宮市民だが、実は餃子よりも小籠包の方が好きで餃子専門店にもあまり行ったりしないのだが、これはこれで美味しいね。
- 住所と営業時間
メモしてこなかった。Google で香蘭 餃子 宇都宮を検索すると、営業時間や地理情報を載せたサイトがたくさんヒットするのでそちらを参照。住所は栃木県宇都宮市本町2-5。
2004-05-04 に書いたリーデルのシングルモルトを探しにおでかけ。
まずは FKD インターパーク店。2Fの売り場の店員さんに聞くと、無いとの返答。ざっと売り場を見てみたが、そもそもリーデルを扱ってない模様。
東武デパート宇都宮。5F の食器売り場の年配の女性店員に聞いてみた。リーデルの品はあったが、「大吟醸」や「ブルゴーニュ」などのみ。これ以外にあるかどうか質問したが、展示品のみだとのこと。残念。いずれもソムリエシリーズの価格帯ではなかった。確か416系の型番だったので、ヴィノムシリーズだったのだろう。ガラスの厚みは思ってたよりも薄くはなかった。
あとはどこを探そう? ヴィノムのシングルモルトを一脚欲しいだけなんだけどなあ。デパートやショッピングモールよりも、個人経営の食器店や雑貨屋さんとかの方が良いのかな。友達は「家具の大川とか東京インテリアを探してみては?」とアドバイスをくれた。そのうち行ってみよう。
まずは FKD インターパーク店。2Fの売り場の店員さんに聞くと、無いとの返答。ざっと売り場を見てみたが、そもそもリーデルを扱ってない模様。
東武デパート宇都宮。5F の食器売り場の年配の女性店員に聞いてみた。リーデルの品はあったが、「大吟醸」や「ブルゴーニュ」などのみ。これ以外にあるかどうか質問したが、展示品のみだとのこと。残念。いずれもソムリエシリーズの価格帯ではなかった。確か416系の型番だったので、ヴィノムシリーズだったのだろう。ガラスの厚みは思ってたよりも薄くはなかった。
あとはどこを探そう? ヴィノムのシングルモルトを一脚欲しいだけなんだけどなあ。デパートやショッピングモールよりも、個人経営の食器店や雑貨屋さんとかの方が良いのかな。友達は「家具の大川とか東京インテリアを探してみては?」とアドバイスをくれた。そのうち行ってみよう。
lftp は高機能な ftp クライアント。
http://lftp.yar.ru/
オフィシャルサイトの Feature list と Man page を読めば、ftp 関連でやりたいと思うことは lftp でたいてい実現できることがわかる。
Feature list http://lftp.yar.ru/features.html
Man page http://lftp.yar.ru/lftp-man.html
Feature list から、対応しているプロトコルを引用。他にもいろいろ書いてあった。
http://lftp.yar.ru/features.html
ミラーリング時のオプションも豊富だ。ローカルに存在しなくてミラー先にのみ存在するファイルを削除するかどうか指定できるし、ミラーリング対象ファイルを正規表現で絞り込んだり、タイムスタンプで比較して新しいファイルのみをミラーしたりと、かゆいところに手が届くような機能ばかりだ。
以下 man page から抜粋。
http://lftp.yar.ru/lftp-man.html
以下、そのうち試したい機能。
FTP over HTTP proxy support は、squid を http と ftp の proxy サーバとして使用している環境で有用だろう。IE や Mozilla などのブラウザからは proxy を使って ftp サイトにアクセスできるのに、windows の ffftp をはじめとする ftp クライアントでは proxy を利用できない、という現象がある。これは ffftp などが FTP over HTTP proxy に対応していないために起こる。lftp ならこれを解決できるようだ。
追記。FTP over HTTP proxy support によるプロキシ越えは 2004-05-11 で実際に試してみた。
- lftp オフィシャルサイト
LFTP - reliable ftp clienthttp://lftp.yar.ru/
オフィシャルサイトの Feature list と Man page を読めば、ftp 関連でやりたいと思うことは lftp でたいてい実現できることがわかる。
Feature list http://lftp.yar.ru/features.html
Man page http://lftp.yar.ru/lftp-man.html
Feature list から、対応しているプロトコルを引用。他にもいろいろ書いてあった。
http://lftp.yar.ru/features.html
* FTP and HTTP protocols support.
* FTP (e.g. TIS FWTK) proxy support.
* HTTP proxy support.
* FTP over HTTP proxy support (hftp).
* HTTPS and FTPS protocols support using OpenSSL library.
* Automatic OPIE/SKEY support in FTP protocol.
* FXP transfers support (between two FTP servers, bypassing client machine).
* FTP listings support: unix-style, NT, EPLF.
* Automatic reconnect and retry of an operation on retriable errors or timeout.
* IPv6 support in both FTP and HTTP.
* FISH protocol support. It uses ssh with no special program on server side.
* SFTP protocol v3 and v4 support.
* HTTP/1.1 keep-alive support.
* Experimental support for SRV DNS records.
* SOCKS support (configure option).
- インストール
lftp はたいていの Linux ディストリビューションに含まれているようで、最初からインストールされていることが多い。私の cygwin にはインストールしていなかったが、cygwin 用 lftp のパッケージが用意されていて、cygwin の公式インストーラからインストールできた。cygwin の setup.exe http://www.cygwin.com/setup.exe を起動して lftp を選ぶだけだ。- 私の lftp コマンド
ローカルのファイル群を infoseek に ftp ミラーリングアップロードしている。$ lftp -c "open ftp.isweb.infoseek.co.jp && user USER_NAME PASSWORD && lcd /home/hiroaki/public_html/log && cd / && mirror -R -I 2002* & mirror -R -I 2003* & mirror -R -I 2004* && mirror -R -i '^dat.*|^cat.*|^all.*|^cl.*|^i.*'"
- lftp の便利な機能1 ミラーリングアップロード とミラーリングダウンロード
要するにローカルとリモートのファイルを同期させる機能。普通の無料ホームページサービスは ftp くらいしかアップロードする方法がない。rsync が使えるなら rsync で良いけど、rsync を使える無料ホームページサービスは少ないだろう。ミラーリングが使えるとローカルで html の出来をチェックしさえすれば、同じものがサーバにも置かれることになるのでとても便利だ。ミラーリング時のオプションも豊富だ。ローカルに存在しなくてミラー先にのみ存在するファイルを削除するかどうか指定できるし、ミラーリング対象ファイルを正規表現で絞り込んだり、タイムスタンプで比較して新しいファイルのみをミラーしたりと、かゆいところに手が届くような機能ばかりだ。
以下 man page から抜粋。
http://lftp.yar.ru/lftp-man.html
mirror [OPTS] [source [target]]
Mirror specified source directory to local target directory.
If target directory ends with a slash, the source base name
is appended to target directory name. Source and/or target
can be URLs pointing to directories.
-c, --continue continue a mirror job if possible
-e, --delete delete files not present at remote site
--delete-first delete old files before transferring new ones
-s, --allow-suid set suid/sgid bits according to remote site
--allow-chown try to set owner and group on files
--ignore-time ignore time when deciding whether to download
--ignore-size ignore size when deciding whether to download
--only-missing download only missing files
-n, --only-newer download only newer files (-c won't work)
-r, --no-recursion don't go to subdirectories
-p, --no-perms don't set file permissions
--no-umask don't apply umask to file modes
-R, --reverse reverse mirror (put files)
-L, --dereference download symbolic links as files
-N, --newer-than=SPEC download only files newer than specified time
-P, --parallel[=N] download N files in parallel
--use-pget[-n=N] use pget to transfer every single file
-i RX, --include RX include matching files
-x RX, --exclude RX exclude matching files
-I GP, --include-glob GP include matching files
-X GP, --exclude-glob GP exclude matching files
-v, --verbose[=level] verbose operation
--log=FILE write lftp commands being executed to FILE
--script=FILE write lftp commands to FILE, but don't execute them
--just-print, --dry-run same as --script=-
--use-cache use cached directory listings
--Remove-source-files remove files after transfer (use with caution)
-a same as --allow-chown --allow-suid --no-umask
- lftp の便利な機能2 ミラーリング時の自動再試行
http://lftp.yar.ru/features.htmlAutomatic reconnect and retry of an operation on retriable errors or timeout.自動再試行は便利だ。致命的でないエラーの時とタイムアウトの時は自動でリトライする。つまり、回線やサーバの ftpd が不安定だったりするときは自動でリトライしてくれる。この機能は非常にうれしい。infoseek の ftpd は混雑時は不安定になりがちだが、自動リトライ機能のおかげで安心して ftp できる。自動再試行についても、再試行回数や再試行間隔などのオプションが用意されている。詳細は man page を参照。
- lftp の便利な機能3 スクリプトファイルによる自動実行
ftp セッション中に実行したいコマンドをあらかじめ記述しておき、それを lftp に渡せば実行してくれるというもの。2003-12-01 に書いた「ftp: ftp + tar + cron で自動ネットワーク・バックアップ」で利用している機能だ。cron と組み合わせると定型的な作業を自動化できる。- lftp の便利な機能4 ジョブ制御
シェルに似たジョブの制御ができる。コマンドの最後に & を付けるとバックグラウンド実行になる。私の lftp コマンドでも & を付けているが、どこまで効果があるかは不明。複数の ftp セッションを開いて並行にアップロードしているのかどうか確かめてはいない。あとで確認しよう。- 他にも機能がいっぱい
lftp はとにかく高機能。man もそれだけ長いが、読む価値はある。perl や ruby で独自に ftp クライアントを実装するよりも、lftp を使った方が早くて確実だ。以下、そのうち試したい機能。
FTP over HTTP proxy support (hftp).
`pget' to download a file using several connections.
FTP over HTTP proxy support は、squid を http と ftp の proxy サーバとして使用している環境で有用だろう。IE や Mozilla などのブラウザからは proxy を使って ftp サイトにアクセスできるのに、windows の ffftp をはじめとする ftp クライアントでは proxy を利用できない、という現象がある。これは ffftp などが FTP over HTTP proxy に対応していないために起こる。lftp ならこれを解決できるようだ。
追記。FTP over HTTP proxy support によるプロキシ越えは 2004-05-11 で実際に試してみた。
今、私はとっても攻撃的な気分になっている。今日はゆっくり読書しようかと思ったけど、この気持ちの高ぶりを抑えられない。ゼビル島での第四次試験で興奮してしまって、「鎮めなきゃ」と言っていたヒソカのような状態だ。何かを破壊したい。こんなときはシューティングゲームをプレイするに限る。腕が疲れるくらい連打してレーザーを敵に叩き込むようなシューティングゲームをやりたい。
手元にあってすぐ起動できる作品を思い浮かべてみる。レイストーム、サイヴァリア、スターイクシオン、ギャラクシアン3。うーん、どれも違う。ギャラクシアン3はイイ線行ってるが、ちょっと違う。そうだ、64のスターフォックスにしよう。このゲームはいいゲームだ。64を持っているなら、ぜひ一度プレイすべき。中古でも手頃な値段になっているし。
http://www.nintendo.co.jp/n01/n64/software/nus_p_nfxj/
スターフォックス64 はニンテンドウ64の名作3D シューティングゲーム。スーパーファミコン版に比べて圧倒的に美麗かつ滑らかになったグラフィックと、3D スティックによるアナログ操作の楽しさが売り。
登場人物はよくしゃべり、ゲームを盛り上げる。スーパーファミコン版では動物語(?)で喋っていて、字幕を読まないと意味をとれなかったが、今回は日本語。スリッピー・トードの「フォックスぅー、後ろの敵を何とかしてよぉー」とか、フォックスの「まかせて下さい!」とか、とにかく良く喋る。「ブーストで切り抜けろ!」などの攻略に繋がるアドバイスもあり、このゲームではセリフは欠かせない要素だ。
一方、やり込み要素は多く、プレイヤーを飽きさせない。まず、ステージ内でのイベントをこなして条件を満たすことで、より難易度の高い上級のコースに分岐できる。分岐しても強制ではなく選択肢が増えるだけなので、攻略ルートは自分で決められる。軽くプレイしたいときや、ひたすらハイスコアを狙いたいときなど、気分によってルートを変えられるわけだ。
スコアアタックも熱い。各ステージで一定以上の撃墜数を出したときにその証がもらえる「勲章システム」がある。すべてのステージで勲章をもらうと、敵の攻撃が激しく自機のウイングが壊れやすい上級者向けのエクストラモードをプレイできる。エクストラのベノム(表)では、ローリングで跳ね返しきれないほどのレーザーを敵が打ち込んでくる。練習するうちになんとかなっちゃうんだけどね。
音楽もオーケストラの風味を取り入れてあり、宇宙活劇をよく演出している。コーネリアのイントロのGディフューザーシステム確認シーンの曲などは、遊撃隊の出撃の雰囲気が良く出ていて好きだ。
アナログスティックを操作し、照準を敵の弱点に合わせる。右手はコントローラーを持つことは考えずに、連打することだけを考える。高橋名人が連打するような感じで、A ボタンをひたすら連打ッ! ボスのシールドゲージが一気につーっと滑るように減っていき、その後派手な爆発音と画面エフェクトが表示されるところが、非常に気持ちいい。時間にしておよそ2秒とちょっと。スタープラチナを叩き込む承太郎ってこういう気分なんだろうな。
ゲームとしては完成しているのでとてもおもしろいが、1997年の作品のため、画質や音質は最新のハードウェアで動くゲームに比べれば多少見劣りしてしまう。ここはやはり最新機種のゲームキューブでスターフォックスをプレイしたいところだ。
ゲームキューブではスターフォックスは発売されているが、シューティングゲームではなく、「スターフォックスアドベンチャー」というアクションゲームだ。私がプレイしたいのはアクションゲームではなく、爽快でゲーム的に楽しい要素を満載したシューティングのスターフォックスだ。ナムコがいま作ってるという話だけど、早く発売されないかなー。
追記。ゲームキューブでスターフォックスが発売された。
もちろん購入済み。・・・でも、ゲームキューブが壊れてて遊べない。はやく修理に出さなきゃ。
手元にあってすぐ起動できる作品を思い浮かべてみる。レイストーム、サイヴァリア、スターイクシオン、ギャラクシアン3。うーん、どれも違う。ギャラクシアン3はイイ線行ってるが、ちょっと違う。そうだ、64のスターフォックスにしよう。このゲームはいいゲームだ。64を持っているなら、ぜひ一度プレイすべき。中古でも手頃な値段になっているし。
- ニンテンドウ64の名作 スターフォックス64
スターフォックス64 任天堂公式サイトhttp://www.nintendo.co.jp/n01/n64/software/nus_p_nfxj/
スターフォックス64 はニンテンドウ64の名作3D シューティングゲーム。スーパーファミコン版に比べて圧倒的に美麗かつ滑らかになったグラフィックと、3D スティックによるアナログ操作の楽しさが売り。
登場人物はよくしゃべり、ゲームを盛り上げる。スーパーファミコン版では動物語(?)で喋っていて、字幕を読まないと意味をとれなかったが、今回は日本語。スリッピー・トードの「フォックスぅー、後ろの敵を何とかしてよぉー」とか、フォックスの「まかせて下さい!」とか、とにかく良く喋る。「ブーストで切り抜けろ!」などの攻略に繋がるアドバイスもあり、このゲームではセリフは欠かせない要素だ。
- そんなに難しくないけどやり込み要素たっぷり
難易度はあまり高くない。シールドゲージ制なので敵の弾一発で即死ということはない。敵のレーザーはローリングではね返すことができるし、シールドゲージの回復アイテムもふんだんに出現する。クリアするだけなら結構簡単だ。一方、やり込み要素は多く、プレイヤーを飽きさせない。まず、ステージ内でのイベントをこなして条件を満たすことで、より難易度の高い上級のコースに分岐できる。分岐しても強制ではなく選択肢が増えるだけなので、攻略ルートは自分で決められる。軽くプレイしたいときや、ひたすらハイスコアを狙いたいときなど、気分によってルートを変えられるわけだ。
スコアアタックも熱い。各ステージで一定以上の撃墜数を出したときにその証がもらえる「勲章システム」がある。すべてのステージで勲章をもらうと、敵の攻撃が激しく自機のウイングが壊れやすい上級者向けのエクストラモードをプレイできる。エクストラのベノム(表)では、ローリングで跳ね返しきれないほどのレーザーを敵が打ち込んでくる。練習するうちになんとかなっちゃうんだけどね。
音楽もオーケストラの風味を取り入れてあり、宇宙活劇をよく演出している。コーネリアのイントロのGディフューザーシステム確認シーンの曲などは、遊撃隊の出撃の雰囲気が良く出ていて好きだ。
- スターフォックス64の醍醐味
スターフォックス64で一番爽快なのは、ボタンを連打してボスにレーザーを一気に叩き込むところ。アナログスティックを操作し、照準を敵の弱点に合わせる。右手はコントローラーを持つことは考えずに、連打することだけを考える。高橋名人が連打するような感じで、A ボタンをひたすら連打ッ! ボスのシールドゲージが一気につーっと滑るように減っていき、その後派手な爆発音と画面エフェクトが表示されるところが、非常に気持ちいい。時間にしておよそ2秒とちょっと。スタープラチナを叩き込む承太郎ってこういう気分なんだろうな。
- ゲームキューブでスターフォックスやりたいな
ゲームとしては完成しているのでとてもおもしろいが、1997年の作品のため、画質や音質は最新のハードウェアで動くゲームに比べれば多少見劣りしてしまう。ここはやはり最新機種のゲームキューブでスターフォックスをプレイしたいところだ。
ゲームキューブではスターフォックスは発売されているが、シューティングゲームではなく、「スターフォックスアドベンチャー」というアクションゲームだ。私がプレイしたいのはアクションゲームではなく、爽快でゲーム的に楽しい要素を満載したシューティングのスターフォックスだ。ナムコがいま作ってるという話だけど、早く発売されないかなー。
追記。ゲームキューブでスターフォックスが発売された。
もちろん購入済み。・・・でも、ゲームキューブが壊れてて遊べない。はやく修理に出さなきゃ。
2003年夏に発売された アルバム Emotional Technology 収録曲のリミックス。
Walmart.com - Technology (EP), The
http://www.walmart.com/catalog/product.gsp?product_id=261803 ...
mp3。CD 音源。長尺な曲が多いのに、30秒しか試聴できないのは辛い。
CISCO|The Technology EP
http://www.cisco-records.co.jp/cgi/item_detail.php?qId=10256 ...
アナログ盤の試聴ができる。CD 盤とは収録曲が一部異なる。試聴ファイルの音質は 40kbps と良くないけど。
- 試聴
以下のサイトで試聴できる。Walmart.com - Technology (EP), The
http://www.walmart.com/catalog/product.gsp?product_id=261803 ...
mp3。CD 音源。長尺な曲が多いのに、30秒しか試聴できないのは辛い。
CISCO|The Technology EP
http://www.cisco-records.co.jp/cgi/item_detail.php?qId=10256 ...
アナログ盤の試聴ができる。CD 盤とは収録曲が一部異なる。試聴ファイルの音質は 40kbps と良くないけど。
- 元曲を収録したアルバム Emotional Technology
何度見てもこのアルバムのジャケットに写っている男性は奇妙な感じがする。曲はすごく良いんだけどね。え、この写真の人 BT なの?- .htaccess で mod_rewrite
.htaccess に RewriteRule を設定する場合、第一引数はファイル名だけを記述する。ディレクトリを含んだ正規表現を第一引数に与えても動作しない。例) /home/hiroaki/public_html/log2 にあるファイルを /home/hiroaki/public_html/log の URL でアクセスさせる
RewriteEngine on
RewriteRule .* /~hiroaki/log/$1
今日の失敗は、「.htaccess に設定するときは、mod_rewrite の第一引数にはファイル名だけを記述する」というルールに気が付かずに10分無駄にしたこと。
- 参考
Apache URL Rewriting Guidehttp://japache.infoscience.co.jp/rewriteguide/
- 追記 mod_rewrite の代替
mod_rewrite を使えない場合に、なんとかして rewrite っぽい動作をさせる方法。もっとも、rewrite 先が CGI でないとダメだけど。2004-09-08 「ErrorDocument を利用した mod_rewrite の代替」
2004-09-13 「Action を利用した mod_rewrite の代替」
とあるページを見ていたら、amazon のバナーが目にとまった。ホーム & キッチンカテゴリのバナーだった。書籍や CD や電気製品のバナーはよく見かけるが、このカテゴリは珍しい。バナーに表示されていたのは、象印のポットとリーデルのビール用グラス。へえ、最近の amazon ってリーデルも扱ってるんだ。そういえば、シングルモルトを飲むためのグラスが欲しいな、と思ってたっけ。ちょっと見てみよう。
amazon で Riedel を検索
http://www.amazon.co.jp/exec/obidos/external-search?tag=linu ...
なるほど、結構いろんな種類があるんだね。値段も思ったほど高くない。「オヴァチュア ビールペア 4408/11」って2脚で3000円位だ。先輩が結婚祝いの品としてリーデルを贈ろうとしていたんだけど、予算が足りなくて品物の選定にすごく悩んでいたみたいだったから、もっと高いのかなーと思ってたよ。どの型番の品だったかは覚えてないけど。
えーと、値段は・・・みんな一脚一万円くらいするよ・・・。種類によっても多少異なるが、ソムリエシリーズ (Sommeliers) はヴィノムシリーズ (Vinum) のだいたい5倍以上の値段がついている。ダイヤでも入ってるの? それともどこかの人間国宝が作ってるの?
どう違うのかをウェブで調べてみる。素材は同じだが、ソムリエシリーズは職人の手作りの品で、ヴィノムシリーズは機械による大量生産品とのこと。その他に、リーデルの良さも書かれていた。といっても、リーデルのグラスで飲むと美味しいとか、贅沢な気分になるとか、そういった賛美がいくつかのページにあった。
うーん、リーデルのグラスだと美味しいって言われても、根拠が書いてないな。結局は気分の問題なんじゃないのかな。科学的根拠がないんだったら、ダイソーの100円のグラスでも良いような気がする。ガラスが薄いので唇に触れたときの感触が良いというのはちょっと説得力あるけど。
リーデルのソムリエシリーズのシングルモルト。変わった形だけど、意味があるのかな。再びウェブを見て回る。
リーデル、シングルモルト・ウィスキー
http://member.nifty.ne.jp/~tanida/my_home_bar/kokowa_doko/98 ...
ふーむ、こう書かれるとなんだか説得力があるね。他のページでは、「グラスの形状によってアルコールの蒸発の仕方が変わるので、スコッチの香りの立ち方も変わる」とも書かれている。なるほど。
amazon はヴィノムシリーズのシングルモルトを6脚セットでしか取り扱っていないうえに在庫切れ。
仕方がないので、楽天でヴィノムシリーズのシングルモルトの検索結果リンクをメモ。
http://pt.afl.rakuten.co.jp/c/0019f8e7.6599e1d6/?url=http%3a ...
- リーデルって思ったほど高くないんだ
はっきり言って私は食器についての知識がない。リーデルについても、なんとなく高級なブランドという程度の認識。amazon で Riedel を検索
http://www.amazon.co.jp/exec/obidos/external-search?tag=linu ...
なるほど、結構いろんな種類があるんだね。値段も思ったほど高くない。「オヴァチュア ビールペア 4408/11」って2脚で3000円位だ。先輩が結婚祝いの品としてリーデルを贈ろうとしていたんだけど、予算が足りなくて品物の選定にすごく悩んでいたみたいだったから、もっと高いのかなーと思ってたよ。どの型番の品だったかは覚えてないけど。
- リーデルって、高っ! (死神のリューク風に)
って、オヴァチュア (Ouverture) って一番手頃なシリーズなの? 最高級はソムリエシリーズ? じゃあもう一度検索。今度はソムリエシリーズだけ。http://www.amazon.co.jp/exec/obidos/external-search/249-7930 ...えーと、値段は・・・みんな一脚一万円くらいするよ・・・。種類によっても多少異なるが、ソムリエシリーズ (Sommeliers) はヴィノムシリーズ (Vinum) のだいたい5倍以上の値段がついている。ダイヤでも入ってるの? それともどこかの人間国宝が作ってるの?
どう違うのかをウェブで調べてみる。素材は同じだが、ソムリエシリーズは職人の手作りの品で、ヴィノムシリーズは機械による大量生産品とのこと。その他に、リーデルの良さも書かれていた。といっても、リーデルのグラスで飲むと美味しいとか、贅沢な気分になるとか、そういった賛美がいくつかのページにあった。
うーん、リーデルのグラスだと美味しいって言われても、根拠が書いてないな。結局は気分の問題なんじゃないのかな。科学的根拠がないんだったら、ダイソーの100円のグラスでも良いような気がする。ガラスが薄いので唇に触れたときの感触が良いというのはちょっと説得力あるけど。
- シングルモルト用のリーデル
リーデルのソムリエシリーズのシングルモルト。変わった形だけど、意味があるのかな。再びウェブを見て回る。
リーデル、シングルモルト・ウィスキー
http://member.nifty.ne.jp/~tanida/my_home_bar/kokowa_doko/98 ...
オーストリアのリーデル社が開発したシングルモルト用グラス。同社数あるシリーズ
中でも異彩を放つ「シングルモルトウィスキー」がそれだ。 *1)
僅か1cm程の何とも短いステム(脚)に底部に強く丸みを持たせたシリンダ状のボディ。
開口部に向かっての微妙なくびれ。芳香を集中させ、外に若干開いた口がウィスキー
の甘みを舌先に強調する。
このグラス。発表にあたっては専門家を集め、既存のグラスと共に各種モルトを利き酒。
その結果、圧倒的支持を得たという。
ふーむ、こう書かれるとなんだか説得力があるね。他のページでは、「グラスの形状によってアルコールの蒸発の仕方が変わるので、スコッチの香りの立ち方も変わる」とも書かれている。なるほど。
amazon はヴィノムシリーズのシングルモルトを6脚セットでしか取り扱っていないうえに在庫切れ。
仕方がないので、楽天でヴィノムシリーズのシングルモルトの検索結果リンクをメモ。
http://pt.afl.rakuten.co.jp/c/0019f8e7.6599e1d6/?url=http%3a ...
- また騙されたのね?
リーデルのシングルモルト、結構欲しくなってきたぞ。って、ちょっと待って。このリーデルの「ウォーター」って何なの? 器の形状によって酒の味が変わるという理論には説得力があったけど、このグラスで飲むのは水でしょ、水。器で水の味も変わるのかもしれないけど、そんなの看破できるのは海原雄山くらいだろう。私は騙されないぞー。まあ、シングルモルト用のグラスは買おうと思っていたから、リーデルにこだわらずにもうちょっと調べて、良いグラスを一つ買ってみることにしよう。当サイトは ChangeLog メモ を chalow で html に変換させて生成している。本家 chalow からいろいろ拡張したせいか、Celeron 500MHz の私のマシンではちょっと重い。ネットワーク通信を要する部分はキャッシュをできるだけ使うように実装したが、それでも遅い。time コマンドで所要時間を計ると、920KB の ChangeLog ファイルを変換するのに一分から一分半ほどかかっているようだ。
chalow が動いている間 CPU は100%フル稼働しているわけで、他のアプリケーションの応答が悪くなる。ブラウザ程度なら多少反応が悪くなってもまだ許せるが、winamp や CD-R ライティングソフトといったアプリケーションにとって、バッファアンダーランの発生は致命的だ。気分良く音楽を聴いているのに、音飛びが発生してしまっては興ざめ。もっと速い CPU を買えばいいんだけど、それじゃあエンジニアらしくない。何か対策を考えて、それでもダメな場合であればハードウェアに投資するのは全然問題ないが、いきなり力業に頼るのは美しくない。
じゃあ 19 を指定して・・・って、ちょっと待て。引数なしの nice で「低」になるんだったら、最低の優先度指定である 19 を指定するとどうなるんだろう?
nice --help すると -20 から 19 までの範囲があるよって書いてあるけど、それは cygwin では関係ないのかな。
Google で cygwin nice 優先度を検索するとヒット。
Gnuwin32 Applcation
http://www.asahi-net.or.jp/~JC5M-OOTK/cygwin/gnuwin32.html
あ、やっぱりそうなんだ。
その他の標準との互換性
http://www.sixnine.net/cygwin/cygwin-doc/cygwin-api-int/std- ...
API はインターフェイスを持ってるけど、nice コマンドは優先度を最低にする部分しか使っていないだけのようだ。
chalow が動いている間 CPU は100%フル稼働しているわけで、他のアプリケーションの応答が悪くなる。ブラウザ程度なら多少反応が悪くなってもまだ許せるが、winamp や CD-R ライティングソフトといったアプリケーションにとって、バッファアンダーランの発生は致命的だ。気分良く音楽を聴いているのに、音飛びが発生してしまっては興ざめ。もっと速い CPU を買えばいいんだけど、それじゃあエンジニアらしくない。何か対策を考えて、それでもダメな場合であればハードウェアに投資するのは全然問題ないが、いきなり力業に頼るのは美しくない。
- cygwin の nice コマンドは「優先度を最低にする」機能のみサポート
前置きが長くなってしまったが、結局 chalow のプロセスのプライオリティを下げてやれば良いわけだ。Unix だと nice コマンドによるプロセスの優先度の制御をよく使う。cygwin でも使えるんだろうか? まず which でコマンドがあるか確かめてみる。$ which niceおお、ちゃんと入ってる。じゃあ sleep コマンドでテスト。
/usr/bin/nice
$ nice sleep 1000上記コマンドを実行してタスクマネージャで基本優先度のカラムを表示させると、Windows のスケジューラでの優先度は「低」になっている。効いてる効いてる。「低」は確か Windows のスケジューラで一番低い優先度だったはずだ。
じゃあ 19 を指定して・・・って、ちょっと待て。引数なしの nice で「低」になるんだったら、最低の優先度指定である 19 を指定するとどうなるんだろう?
$ nice 19 sleep 1000nice 19 でも、やっぱり「低」。ひょっとして引数を指定しても無意味? 最高優先度の -20 だとどうだろう? いきなりコレをやるのはちょっと怖い。1000秒間 OS が反応しなくなるのは怖いので、sleep する時間は 100 にしておこう。
$ nice -20 sleep 100nice -20 だから「リアルタイム」になるかと思ったのに、またしても「低」。やっぱり引数は無視されているようだ。
nice --help すると -20 から 19 までの範囲があるよって書いてあるけど、それは cygwin では関係ないのかな。
$ nice --help
Usage: nice [OPTION] [COMMAND [ARG]...]
Run COMMAND with an adjusted scheduling priority.
With no COMMAND, print the current scheduling priority. ADJUST is 10
by default. Range goes from -20 (highest priority) to 19 (lowest).
-n, --adjustment=ADJUST increment priority by ADJUST first
--help display this help and exit
--version output version information and exit
Report bugs to <bug-sh-utils@gnu.org>.
Google で cygwin nice 優先度を検索するとヒット。
Gnuwin32 Applcation
http://www.asahi-net.or.jp/~JC5M-OOTK/cygwin/gnuwin32.html
nice 指定したプロセスの優先順位を最低に変える
あ、やっぱりそうなんだ。
- cygwin API はインターフェイスを持っているようだ
検索結果を眺めていたら、cygwin の API のドキュメントがあった。その他の標準との互換性
http://www.sixnine.net/cygwin/cygwin-doc/cygwin-api-int/std- ...
nice は本関数の incr 引数を使用することによって、 Cygwin プログラムに対して現在の実行優先度の変更を許可します。 Cygwin プロセスは nice 呼び出しに対し、 IDLE_PRIORITY_CLASS、NORMAL_PRIORITY_CLASS、 HIGH_PRIORITY_CLASS 又は REALTIME_PRIORITY_CLASS を指定出来ます。 NORMAL_PRIORITY_CLASS がデフォルトです。 nice() に対して正値を指定すると、優先度は(先の優先度リスト中で)一つ減少します。負値の指定は優先度を一つ増加させます。呼び出しを繰り返し行わない限り、一度に一つ以上優先度を変更することは出来ません。 REALTIME_PRIORITY_CLASS 以上に増加させた場合、プロセスはその優先度に留まります。同様に、IDLE_PRIORITY_CLASS 以下に減少させた場合もその優先度に留まります。 Win32 API には 32 の優先度が存在することに注意して下さい。現在のところ、nice を通してはそれらのうちの 4 つにしかアクセス出来ません。
API はインターフェイスを持ってるけど、nice コマンドは優先度を最低にする部分しか使っていないだけのようだ。
- 優先度を最低にするだけでも十分
私の用途では細かく優先度をコントロールする必要はないから、この実装で十分。chalow を呼び出しているシェルスクリプトに nice を組み込んで、と。うん、快適快適。memo って何かの略称なのかなと、ふと気になって memo を辞書で引く。あ、やっぱり memo って略称だったんだ。正式名称は memorandum か。
Yahoo!辞書
http://dic.yahoo.co.jp/bin/dsearch?t=o&d=all&p=memo
memory あたりが正式名称かなあと思ったけど、全然別だった。
そういえばメモリーズ (memories) って映画があったね。関係ないけど。
Yahoo!辞書
http://dic.yahoo.co.jp/bin/dsearch?t=o&d=all&p=memo
memo
〔名〕《略式》メモ(memorandum) a 〜 pad メモ帳.
memory あたりが正式名称かなあと思ったけど、全然別だった。
そういえばメモリーズ (memories) って映画があったね。関係ないけど。
形態素解析をしたくなったので ChaSen をインストール。
cygwin 上の Perl か Ruby スクリプトから ChaSen に文字列を渡そうと思っている。パフォーマンスは考えなくていい用途なので、ChaSen 側インターフェイスは何でもいい。パイプかファイルで渡すのが楽そうだな。あ、でも Perl だったら chasen.pm があるんだっけ。Namazu のドキュメントに書いてあったような気がする。
ChaSen's Wiki - ソースからのインストール
http://chasen.aist-nara.ac.jp/hiki/ChaSen/?%A5%BD%A1%BC%A5%B ...
http://chasen.aist-nara.ac.jp/stable/chasen/ から chasen-2.3.3.tar.gz をダウンロードして展開。
cygwin だから configure には結構時間がかかる。おおっと、エラーだ。
darts を入れてね、か。wiki にも書いてあったね。
configure するとまたエラー。
あれ? C++ のコンパイラってインストールしてなかったっけ? と思って出力を見直すと「コンパイラが無いよ」って言われてる。cygwin 入れるときに省いちゃったのかな。
うーん、どうしよう。コンパイラを入れても良いけど、ちょっと手間だなあ。もっと古いバージョンなら C++ を使わないで済むのかな?
おや、ChaSen って Windows 版もあるのか。これを入れてみよう。配布サイズは大きいけど、辞書も付いてるみたいだし、楽かもしれない。
コマンドラインから chasen.exe にファイルを渡す。渡すファイルは何にしよう? そうだな、2004-04-29 で書いたピクミンの記事にしよう。
できたー! ChaSen はオプションもたくさんあるみたいだし、いろいろ遊べそう。
cygwin 上の Perl か Ruby スクリプトから ChaSen に文字列を渡そうと思っている。パフォーマンスは考えなくていい用途なので、ChaSen 側インターフェイスは何でもいい。パイプかファイルで渡すのが楽そうだな。あ、でも Perl だったら chasen.pm があるんだっけ。Namazu のドキュメントに書いてあったような気がする。
- ソースからインストール
ChaSen の wiki に情報があった。cygwin については書いてないけど、たぶん大丈夫だろう。とにかくやってみよう。ChaSen's Wiki - ソースからのインストール
http://chasen.aist-nara.ac.jp/hiki/ChaSen/?%A5%BD%A1%BC%A5%B ...
http://chasen.aist-nara.ac.jp/stable/chasen/ から chasen-2.3.3.tar.gz をダウンロードして展開。
cygwin だから configure には結構時間がかかる。おおっと、エラーだ。
checking for darts.h... configure: error: no header of Darts. You need to fetchDarts from http://cl.aist-nara.ac.jp/~taku-ku/software/darts/.
darts を入れてね、か。wiki にも書いてあったね。
- chasen が依存している datrs をインストール
http://chasen.org/~taku/software/darts/ から darts-0.2.tar.gz をダウンロードして展開。configure するとまたエラー。
checking how to run the C++ preprocessor... /lib/cpp
configure: error: C++ preprocessor "/lib/cpp" fails sanity check
See `config.log' for more details.
あれ? C++ のコンパイラってインストールしてなかったっけ? と思って出力を見直すと「コンパイラが無いよ」って言われてる。cygwin 入れるときに省いちゃったのかな。
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for g++... no
checking for c++... no
checking for gpp... no
checking for aCC... no
checking for CC... CC
checking whether we are using the GNU C++ compiler... no
checking whether CC accepts -g... no
checking dependency style of CC... gcc3
checking whether make sets $(MAKE)... (cached) yes
うーん、どうしよう。コンパイラを入れても良いけど、ちょっと手間だなあ。もっと古いバージョンなら C++ を使わないで済むのかな?
おや、ChaSen って Windows 版もあるのか。これを入れてみよう。配布サイズは大きいけど、辞書も付いてるみたいだし、楽かもしれない。
- ChaSen Windows 版のインストール
http://chasen.aist-nara.ac.jp/stable/chasen/win/ から chasen233_031208.exe をダウンロードして実行。「次へ」を連打でインストール完了。凄まじく楽。コマンドラインから chasen.exe にファイルを渡す。渡すファイルは何にしよう? そうだな、2004-04-29 で書いたピクミンの記事にしよう。
C:\Program Files\ChaSen>chasen.exe "C:\Program Files\ChaSen\picmin.txt"
* 未知語
ゲーム ゲーム ゲーム 名詞-一般
: 未知語
ピクミン 未知語
2 ニ 2 名詞-数
を ヲ を 助詞-格助詞-一般
プレイ 未知語
EOS
ゲーム ゲーム ゲーム 名詞-一般
キューブ キューブ キューブ 名詞-一般
の ノ の 助詞-連体化
ピクミン 未知語
2 ニ 2 名詞-数
を ヲ を 助詞-格助詞-一般
プレイ 未知語
。 。 。 記号-句点
実は ジツハ 実は 接続詞
ピクミン 未知語
を ヲ を 助詞-格助詞-一般
できたー! ChaSen はオプションもたくさんあるみたいだし、いろいろ遊べそう。