[ 捕捉確認済アンテナ ] 日記観察 *BSD Diary Links わっちりんく(す) はこんだらウォッチ 天野アンテナ HNN日記バード しっぽあんてな しぐなるぽ〜と |
|
自宅の FreeBSD 機に PostgreSQL7 を入れてみる。 /usr/ports/database のはまだ 7.0 だったので、Web サイトから拾ってきた。
make。 tcl の新しいバージョンがインストールされてしまった。また増えたのか。(汗;
wish だけでもこんなにあるぞ。どうすんねん。
あ、--enable-multibyte ってつけてなかったような。pkg_delete してコンパイルし直そう。
ビルド中。 あ、ディフォルトが multibyte サポートつきなのね。消すんじゃなかった…。
ruby の拡張ライブラリも忘れずに。Ports は最新になっていないようなのでソースを直接ビルド。
pgbash というのはまだ Ports に入っていないのだろうか。 ソースから直接 make && make install してみる。
あれえ? さっきまであった agaccess がなくなってるなあ。 あ、-DWITH_TCL をつけるの忘れてた。またコンパイルし直しか。*sigh*
前から気になっていたけど、やっぱり このひと ウチの会社の発注先だった。 (*1)
僕の日記のことは全然知らないみたいだけど。
家庭サービス で土日が暮れて。
ずっとキャリービット立ちっぱなしですぅ。X-D
プロバイダへのダイアルアップ接続時間を集計してみよう。
こういうのは勝手にログがたまっていくようなモノを使わないと、 データエントリの時点で挫折してしまうこと間違い無し。なので。
/var/log/ppp.log から以前えーけーあいさんに教えてもらった
Jul 3 02:09:47 nazareth ppp[24911]: Phase: deflink: Connect time: 147 secs: 160781 octets in, 96212 octets out
という行を引っぱりだしてきてテーブルにぶちこめばいいのか。
まずはテーブルを定義
-- create.sql -- カラム名 データ型 説明 -- ppp_start datetime 接続開始時刻 -- ppp_seconds interval 接続時間 -- ppp_in int 受信データ量 -- ppp_out int 送信データ量 create table ppplog ( ppp_start datetime not null unique, ppp_time interval, ppp_in int, ppp_out int );
という感じでざっくり。
次に syslog からタブ区切りテキストに変換する。
#!/usr/local/bin/ruby # ppp の syslog から接続記録を抽出するスクリプト while gets # 必要な行以外はスキップする next unless /Phase:/ next unless /Connect time/ # ログメッセージを word ごとに分解する ppp_log = split( /\s+/ ) ppp_sec = ppp_log[9] ppp_in = ppp_log[11] ppp_out = ppp_log[14] # 終了時刻から経過時間を引いて開始時間を算出する pyear = Time.now.year # 年をまたぐとき問題ありそう :-P pmon = ppp_log[0] pday = ppp_log[1] ( phour, pmin, psec ) = ppp_log[2].split( ':' ) pdt = Time.local( pyear, pmon, pday, phour, pmin, psec ) ppp_startdt = ( pdt - ppp_sec.to_i ).strftime( "%Y-%m-%d %H:%M:%S" ) # 出力フォーマット: # 接続開始時刻 [tab] 接続時間(秒) [tab] 受信データ量 [tab] 送信データ量 printf( "%s\t%s\t%s\t%s\n", ppp_startdt, ppp_sec, ppp_in, ppp_out ) end
あとは copy コマンドでテーブルに放り込む。
cake=> \copy ppplog from ppplog.txt
結果はこの通り。
[pgbash]~/pppdb> select * from ppplog; | head -5 ppp_start |ppp_time| ppp_in|ppp_out ----------------------+--------+--------+------- 2000-06-18 10:02:30+09|00:02:33| 138536| 8484 2000-06-18 22:10:58+09|00:03:39| 265072| 18352 2000-06-18 22:45:07+09|00:04:21| 538998| 9704
最初の3行だけを恣意的に抽出してみました。(^^;;
あと
select sum(ppp_time) from ppplog;
とかやってみたけど(検閲により削除)が怖いので結果は内緒だ。(^^;;;;;
あとは毎日エントリしていくスクリプトを書いて cron に登録しなければ。
「DADDYFACE 世界樹の舟」/伊達将範/電撃文庫
西E田さんの表紙に惹かれて、シリーズものの2巻みたいだけどまあいいかー、と買ってしまった。
当日中に一気に読了。かなり面白かった。
内容をひとことでまとめると、
若干21歳、へろへろ系いいひと。の大学生 兼 無敵の古代拳法・"九頭竜"の使い手である主人公・草刈鷲士が、 巨大企業の会長 兼 凄腕トレジャーハンター 兼 現役中学生 兼 押しかけ *娘* の結城美沙たちと、 異星人の残したの謎の秘宝を巡って「エイリアンシリーズ」/「スプリガン」系の冒険を繰り広げるラブコメアクション。
ということになるだろうか。
いいッス。
通信の世界では8bitをoctetと表現します。 とのことですか。メールもありがとうございます。
つづけて1巻も買ってしまったり。
いいッス。最高ッス。モロつぼッス。というわけで、
ちなみにウチに実在娘はおりません。
ママが小学生ということは、どれみ達と同じ状況ということで…。そりゃ大変どころじゃないねー。
「フォー・ザ・バレル」
うおー、これは目を奪われてしまう。見事なリミックスちゅうか、カバーちゅうか。
こういうフラウですか、とか、ブライトもペガサスというよりはジェイナス?とか。
あとやっぱり、アムロがいないところがまた。
いますねー。連載見て初めて気がついた。
メカのラインも、ターンA後ならこんなのあり、という感じでインダストリアルに美しいっす。
Linuxを 入れる ということですが。
CFカード と Linuxbox とほんの少しのド根性があれば大丈夫っす。:D
僕も昔はカルトにいました。最初は割とまともっぽかったのですが、だんだんダークな感じになってきて。 夫婦で逃げ出したのです。
UNIX Magazine 2000年2月号を参考に、wwwoffle を入れる。
当然のごとく ports からコンパイル&インストール。 ただ、/var の容量によゆーがなかったために、Makefile をちょっと修正。
# $SPOOL seems like a common name which could be used for other things, so # use $WWWOFFLE_SPOOL as the overriding setting. -WWWOFFLE_SPOOL?= /var/spool +WWWOFFLE_SPOOL?= /home
これで /home/wwwoffle 以下にキャッシュされるようになった。
あとは /etc/ppp/ppp.linkup と /etc/ppp/ppp.linkdown に
と入れてできあがり。
バイナリファイルを cat してしまったりして、ターミナルがおかしくなることがある。
[症状]
キーを入力しても画面に文字がでない。しかし、Enter を押すと今まで押した文字がずら
ずら。
コマンドも普通に実行される。エミュレータの "Reset Terminal" とか "Do full reset"
とかの
操作でも直らない。
そういうときは、
% stty echo
というコマンドを入れると直る。(こともある)
反応は皆無? ひょっとして未開拓のジャンルなのかも。
これもパスファインダー/ラッセル者の宿命か。<バカ
久しぶりに覗いて見たら、結構お話が進んでいて。痛い展開になってます。 決着に向けてどんどん加速していますね。
それにしても、この筆力はやっぱりすごいです。
巨大家電メーカーのマーケティング&プロモーションは、やはり質・量ともに違いますね。
いろいろいじっているうちに、なんとなく使い方が分かってくる。
とりあえず一日一回 *BSD Diary Link を回るようにしてみよう。うまくいくかな?
Web 型の UI って、回りくどさのテイストが昔のダム端に似ている。
うーん。動作モデルはまるっきり同じか。みんな飛びつくはずだよなあ。
会社で、http proxy (Squid) のログから、各社員の 接続時間 を調べよとのお達し。
要は、一人ひとりがどのくらいの時間 Web を眺めているかを知りたいらしい。
いくら説明しても、表示されている間は通信が継続している、 という思い込みから脱することができないらしい。これだからパンチカード世代は。
某先輩は、1ページあたり 30 秒! と乱暴に決め打ちして、GET の数でかけ算していた。 ま、調査自体がアレだからそのくらいのおおざっぱさで丁度良いのかも。
日記の中のリンクとか、ML などで紹介されたページとか、 オフラインで読んでいるときに、ブラウザから GO するだけで気軽にダウンロード予約とかしておける。 結構便利。:D
でも w3m と相性がわるいような。どうも '~' <-> '%7E' の扱いでぶつかっているっぽい。 そういえば wwwoffle の '~' の扱い自体、ずっと前に話題になっていたのを思い出した。 あれってどうなったんだっけ。
Linux 版が FreeBSD で動くか試してみようと思いたつ。
# Squeak は日本語のハンドリングがまだまだなので。
ここ からたどり、フォームに答えてハイ。
うげ、36MB もあるのか。こんなものは at と wget で明け方に自動取得しよう。
データをテーブルに追加しているスクリプトができた。
#!/usr/local/bin/ruby require "postgres" # データベースに記録されている最新のデータの日時を取り出す Pghostname = 'localhost' Pgusername = 'cake' Pgportnum = 5432 conn = PGconn.connect( Pghostname, Pgportnum, "", "", Pgusername ) res = conn.query("select max(ppp_start) from ppplog;") (res_year, res_mon, res_day, res_hour, res_min, res_sec, dummy ) = res[0][0].split( /[-\s:+]+/ ) last_time = Time.local( res_year, res_mon, res_day, res_hour, res_min, res_sec ) while gets # 必要な行以外はスキップする next unless /Phase:/ next unless /Connect time/ # ログメッセージを word ごとに分解する ppp_log = split( /\s+/ ) ppp_sec = ppp_log[9] ppp_in = ppp_log[11] ppp_out = ppp_log[14] # 終了時刻から経過時間を引いて開始時間を算出する pyear = Time.now.year pmon = ppp_log[0] pday = ppp_log[1] ( phour, pmin, psec ) = ppp_log[2].split( ':' ) pdt = Time.local( pyear, pmon, pday, phour, pmin, psec ) pdt_start = ( pdt - ppp_sec.to_i ) # データベースに記録されていたら読み飛ばす next unless pdt_start > last_time ppp_startdt = pdt_start.strftime( "%Y-%m-%d %H:%M:%S" ) # DB に登録 ins_qry = sprintf( "insert into ppplog values('%s','@ %s',%s,%s);", ppp_startdt, ppp_sec, ppp_in, ppp_out ) print ins_qry, "\n" conn.query( ins_qry ) end
これを /etc/ppp/ppp.linkdown に仕込めば…
vwnc5i.1 はちょっとでかすぎたので、3.1 というバージョンを捜してそれを入れることにした。
Smalltalker's salon ML での情報から某所に置いてあるとの情報を得たので、 Linux 用の VM と base package を落として来る。
まずは展開。VM は ZIP ファイルなので unzip で展開する。 他のパッケージはすべて rpm 形式になっているが、どこに展開されるかもなにが実行されるかも 分からなくて怖いので、とりあえずファイルだけとりだしてみることにする。
$ cd tmp $ rpm2cpio ../VisualWorksNC-base-3.1-1.i386.rpm | cpio -vi
./usr/local/vwnc3.1/ 以下にファイルが展開される。
仮想イメージは vwnc3.1/image にあるので、
$ visualnc visualnc.im
単に実行するだけで普通に動いた。すごいねー。 証拠写真。
近所の貸本屋でカレカノを借りて来て読んだ。面白かった。
のこちゃんも読んだ。面白かったらしい。
『この主人公の女の子、あたしにとっても似ているような気がする』 だって。
先日入れた VisualWorks3.1b Non-Commercial 版をいじっている。
Smalltalker's Salon ML の過去ログを落として来て、拾い読みしつつ挙げられている コード片を Copy& Paste しては試す。
ブラウザとワークスペースの使い方がなんとなく分かってきてうれしい。
Smalltalk (VisualWorks)版 hello world.
1.コンソール版
Transcript cr; show: 'Hello, world.'; cr
2.ウィンドウ版
| aWindow | aWindow := ScheduledWindow new. aWindow component: 'Hello, world.' asComposedText. aWindow label: 'Hello Window'. aWindow open.
ワークスペース上でせめて C-n, C-p, C-f, C-b, C-a, C-e が使えるともっと快適なんだけど。 どこかをいじればキーバインドくらい変えられるとは思うものの…。
すでにお気づきかもしれませんが、 残念ながら S5mx では まだ Linux はまだブートにも至っておりません。
最近、Squeak での日本語ハンドリングに進展があったらしいので追っかけてみた。
Squeak2.4c へのパッチとして存在していた多国語化キットの、最新 Ver. である 2.7 への適用パッチがMLで流れたらしい。 さっそく探して入れてみる。 Install.st でまとめて FileIn するとなぜか例外があがってくるのが謎だったが、 Install.st を見ながらひとつひとつ手で FileIn していくと何事もなかった。ますます謎。デバッガで覗いてみたが分からず。
内容的には以前 BSD Magazine で紹介されていた多国語化イメージと同じものだった。
しかしその後最新情報により、Squeak 内でのローマ字⇒仮名⇒漢字変換のコードが流れていたのでそれも入れてみた。 Workspace などでローマ字入力し、黄ボタンメニューから「convert to kanji」などができる。 漢字辞書はもはや定番と化している SKK-JISYO.S 。:D
すごいですー。 ←あ、typo してる…。
再配布に関しては確認していない(そもそもMLすらsubscribeしていない)ので、とりあ えずポインタだけ。
●Squeak2.4ベースの多国語化キットと多国語化済みイメージ
DynaBook の提唱者にして smalltalk 開発者グループのひとり、アラン・ケイをして 「ザウルス欲しい」と言わしめたあの「ざうちゅう」で有名な 大島さんのページ から。
●上記多国語化キットの 2,7 適用化パッチとローマ字かな漢字変換キット
青木さんの Smalltalker's Salon ML archive から 最近のメール。 直リンクは遠慮しました。Subject: で探してください。 「Squeak 2.7で多国語化Squeak」 「多国語化Squeakでかな漢字変換」
キーボードショートカットのパッチも適用して、かなり快適に日本語がuteru
Error: subscript is out of bounds: 3640
ようになった。
この似っきも Squeak の Workspace 上でkaite
Error: subscript is out of bounds: 2713
いる。
エラーもちょくちょく出て 快適do
Error: subscript is out of bounds: 3441
あうう、また出た。
快適というところまではいかないものの、抱いなippo
Error: subscript is out of bounds: 2194
であることはたしかだ。
うぐぐ。住環境にはまだ至らず、か。
本当にしてる人 がいたので恐ろしい。
ちゃんと動いているからとっても嬉しいです。
イメージを小さくする方法 は、確か readme.txt に書いてあったと思います。書いてある式を DoIt するだけだったような。
最後の数話を久しぶりに見返してみた。
うーむ。エレクトラさんが赤木博士にしか見えん。(汗;
Squeak をいじっていて、Scamper を発見。
Scamper new. を DoIt すると Squeak で書かれた Web ブラウザが起動する。
HyperCard みたいなマルチメディア系のオーサリング環境も入っているし、Web Server も入っているし、 Macromedia Flash のプレーヤーも入っているし、もうなんでもありのびっくり箱みたい だねー。
Smalltalk-80 base の使いにくいウィジェットがどうにかならないかと思っていたら、 ウィンドウメニュー => Open... => morphic project で新しいウィジェットの世界に入 れるそうだ。 (と、ReadMe.txt に書いてあった。いままでちゃんと読んでなかったのだ…)
はやちゃんは本当に小学生なのだろうか。 ふつふつと沸いてくる疑問。
pbsd-dev に書くにはあまりに話題が逸れているので…。
Shrink してみたら、イメージサイズが 850KB ほどに縮みました。 起動時文句を言われるだけで、ブラウザでライブラリを覗くときもソースいらないです。
ドキュメントと違って実行順序は、Smalltalk abandonSources を先にしないとエラーになりました。 あとプロトコルが全部 as yet unclassified になってしまい閉口しましたがおおむね平気です。
あと こんなもの もありました。
Squeak は Win-CE では動くのか。PSION で動くようにはならないのかな。くぅ。(悔涙)
分類とか詳しいことは 分かりませんが、旧約聖書に「バアル・ゼブブ(バアル)」という 異教の神 がよく出て来ますので多分これが語源かと思います。
列王記第二 1:3
そのころ、主の使いがティシュベ人エリヤに告げた。「さあ、上って行って、サマリヤの王の使者たちに会い、彼らに言え。『あなたがたがエクロンの神、バアル・ゼブブに伺いを立てに行くのは、イスラエルに神がいないためか。
あと、daemon とセイレイは全く違うものです。
「父と子とセイレイの御名によって…」でおなじみの三位一体の第三位格セイレイは、「聖霊」と書きます。 「聖なる御霊」とか「御霊」とだけ書かれてある箇所もあります。 英語では Holy Spirit, Holy Ghost などと訳されています。
自然法則とは全く関係なくて、神様御自身なので、知・情・意すべて揃っています。
ご参考までに。
以上、18日分です。
[Top] [PocketBSD] [シュミプロ] [ぽめれちょう掲示板] [きまたま日記] [最新版] [一覧] [戻る]
このページはTsDiarySystemを用いて生成されています。
Cake (SHIMADA Keiki)