Windowsでlocateを使いたい

Windowsでファイルを検索するときにあまりの遅さに辟易とすることが多々ある。
そういうときに思い出すのがLinuxのlocate。
ということで探してみた。
あった。
Win32 Locate and Updatedb Scripts

若干順序が逆になったような気もするがlocateってなにっていう人のために簡単に説明を。
locateってのはあらかじめインデックスを張っておくことによってファイルを高速に検索するプログラム。
どのくらい高速かというと、70万個のファイルの中から特定のファイルを探し出すのに1秒かからないくらい高速。(実際に自分のマシンで試したっていう)
ただし、「あらかじめ」というところがみそで、事前にインデックスを張る作業が必要。
それをおこなうのがupdatedb。
で、検索はupdatedbによって構築されたインデックスから検索するので、updatedbの最終実行時以降に新規にファイルが追加されたり移動・削除等々が発生してからlocateで検索すると、誤った検索結果がはじき返されることになるので、その点は注意。
locateとupdatedbは、初回インストール時にまずupdatedbで索引データベースを作成、以降は毎日cron.dailyからupdatedbをはじいて索引を更新っていうのがLinuxでの通常運用だろう。
Windowsだと一応cronの代わりにタスクスケジューラがあるんでそれを使う感じか。

んで、WinLocateの使い方。
アーカイブを展開するとご丁寧にバッチ形式ながらインストーラ付きだった。
正直個人的にはこういうのはいらないんだけども作者は親切心からのことなのだろうから従うことにする。
Install.iniでインストール先のフォルダの指定をして、Install.batをはじくとInstall.iniで指定したフォルダ以下にWin32Locateというフォルダを作成して、そこにファイルを配置するということのようだ。
古いバージョンがすでにある場合は掃除もしてくれるらしい。
デフォルトだとInstall.iniにはC:Program Filesが記述されている。
ちなみにインストール時にロシア語か英語のどっちにするか聞かれる。
Install.batでインストールすると指定先のフォルダにWin32Locateフォルダが生まれていて、そこにLocate.batとUpdatedb.batが生まれている。(実際のところは単にコピーしてるだけなはず)
んで、幸せな運用をするなら、インストール先のフォルダにPATHを通す。
マイコンピュータ->プロパティ->詳細設定->環境変数->システム環境変数->PATHの値を。。。あれ、入ってる。
なるほどなるほどこのためのInstall.batか。
ということでインデックスを構築する。
コマンドプロンプトからupdatedbとたたくと以下のような感じで表示される。

C:>updatedb
Updatedb v0.1.4, by Piroi Ninel <ninix20@gmail.com> - 14/May/2010

Use this tool to index available storage units files for faster find.
To search into database use "Locate.bat" script.

Command help:
'Updatedb -a'       - For indexing all available storage units in the system
'Updatedb c: k:'    - Indexing file structure for C: and K: units
'Updatedb -r'       - Indexing new units and whose database is older than one mo
nth
'Updatedb -d'       - Complete remove database
'Updatedb -d z: y:' - Delete drive Z: and Y: from database
'Updatedb -n'       - Remove all units that are no longer connected to the compu
ter
'Updatedb -i'       - Show details about database
'Updatedb -m'       - Menu interface
'Updatedb -h'       - Show this message
'Updatedb -u'       - Uninstall WinLocate

Available units: c: d: f: j: z:
Do you want to index all storage units: [Yes/Select/Cancel]?

インデックスを張りたくないドライブも含まれているのでSelect。
CとDに張りたい。

Enter drives exactly as above without quote
Please select units for indexing: c: d:


---=[ Process begins at (23:39:53.69) ]=---

This will take few minutes depending on the number of storage
units you choice and how many files contains each of them!

Indexing drive 'C:'... [$Recycle.Bin - 422716 files]
Indexing drive 'D:'... [$RECYCLE.BIN - 283289 files]
Full database: 'PC'... [HYDRANGEA - 706005 total files]

---=[ Process finish at (23:40:03.68) ]=---

なんかさっくりと構築完了。
んで、あとはタスクスケジューラにupdatedbを登録すればいい。
自分の場合は

updatedb c: d:

を登録することになる。
ところで、タスクスケジューラに登録してるときに思ったんだけど、「新しい操作」画面の「開始 (オプション)(T)」って何。
引数の追加はわかるけど。

あとついでに基本タスクとタスクの違いがヘルプを見ても全くわからない。
いじってみた感じ基本タスクの作成よりもタスクの作成の方が細かく設定できるような感じはしたけど。
ああ、全般タブの構成のところもよくわからない。

デフォルトだとVista, 2008になってた。
よくわからないけど何となく7, 2008 R2にしておいた。
いろいろと謎めいている。

Windows7でのキーボードレイアウトの指定

方法としては二通りあるようだ。
一つはシステムで使用するキーボードレイアウトの指定。
一つはキーボード別にレイアウトを指定。

いろいろ調べた結果とりあえずWindows7 64bitでのrealforce 86Uと91UBK用のkeyboard.infができたんで最後にdiffを張っておく。
たぶんVista 64でも使える。

続きを読む Windows7でのキーボードレイアウトの指定

禁煙

今更感ですが2010/10/01からたばこが値上がりしました。
で、かねてよりわたくし、たばこは一箱300円がリミットと決めておりました。
そういった意味では値上げ前の時点ですでにリミット価格だったわけで、過去最大の上げ幅とかどうとかいうのは全く気にしておらず、喫煙者であるにもかかわらず上げ幅についてはとっても無関心で、非喫煙者であるつれに過去最大の上げ幅であるということを教えられる始末であったわけですが、いずれにしても今回のたばこの値上げでたばこをやめることにしたわけです。

ところで、わたくし今までかつて禁煙というものに挑戦したことがありません。
やめる必要性を全く感じないということと、やめたいと思わなかったことがまあ理由であり。
だけども、かねてより、酒とたばこどっちかをとらざるを得ないというのならばどちらをとるかという問いについては、酒をとると即答する程度。
でもって、たばこをやめようと思えば何となくだけどもまあ普通にやめられるような感じというかなんというかそういう自信はなぜか持っておりまして。

とりあえず、わたくしどの程度の喫煙者かといいますと、だいたい一日に30本程度、のみやらスロットやらにいくと60から80本ほどと、まあたぶんどっちかというとヘビースモーカーに分類される部類に属しております。
なんだけども、よく喫煙者にある、朝寝おきの一服はなくても全然苦じゃなく、一定時間以上たばこの吸えない環境にあるとすいたくなって仕方がないっていうようなこともなく。
でも吸える環境なら普通にすぱすぱ吸うタイプでもあり。
何というか、たばこは手癖というかそんな感じの存在な感じでした。

まあそういう感じであったわけですが、10/01で値上げということで、その時点で残っているたばこを吸いきったらやめようという風に思っておりました。
でまあ、いわゆる気合いで禁煙してもよかったんですが、舘ひろしが宣伝している例のお医者さんで禁煙ってやつをやってみようと思い。
別にたばこをやめるのは簡単だとは思っていても、実際にやめようとしたことがないので、いざやめようとしたら飛んでもございませんでしたっていうことは余裕であり得ることですし、単純に気合いで禁煙するよりも成功率高いでしょうし。
保険適用されないなら絶対にとらない選択肢ですが。

ということで近場で禁煙外来をしているクリニックを探していってみました。
なんか、アンケートを受けて、一酸化炭素濃度を測定して、薬もらってきました。
薬はチャンピックスとかいうやつなんですが、ぐぐってみた感じの評判では、たばこがまずくなってすうきがしなくなるとのことでした。

この薬、まず最初の三日は0.5mgを一日一錠、その後四日は0.5mgを一日二錠、それ以降は1mgを一日二錠という飲み方をします。
で、最初の一週間は喫煙を続けてもいいんだけども、二週間目に突入したら吸っちゃいけないらしいです。
ということで薬を飲み始めたんですが、全く持ってきいている気がしません。
特にたばこがまずくなったという感じはなく、喫煙するペースも普段と特に変わらず。
結局自分の場合は気合いで禁煙するのと変わらないような気がします。
おそらくこの辺はニコチン依存症の度合いで変わってきそうな予感がします。
ニコチン依存でたばこを吸っている人にはたぶん効果出るんでしょうけど、手癖とか純粋な嗜好品としてたばこをたしなんでいるようなタイプには別になんということもないんでしょう。
後は体質的な問題でしょうか。
いずれにせよ、個人的には全く効果は感じられないという感じです。
まあ、だけども、一応二週間目からは禁煙ということになっているので、禁煙することに。

そういう感じで気合いで禁煙ということになったわけですが、なんというか、個人的には禁煙っていうふうには構えておりません。
たばこを自分で買うっていうのはやめようっていう感じです。
くれる人がいるならもらって吸うこともあるでしょうっていう感じです。
実際そういう日もありました。
まあでもたばこもらって吸った次の日にはもうたばこは手元にないわけで、だからといってたばこ吸いたくて我慢できないとかっていう感覚は全くなく、たばこを吸わないでも至極普通に過ごしたり。
スロットうちにいったり飲みに行ったりもしましたが、全くたばこ吸わないで平気でございました。
隣でたばこ吸っていたりもしましたが、それもなんということもなく。
まあ、なんというか、予想通りでした。

ちなみに薬は効き目を結局感じないので、飲んだり飲まなかったり適当です。
ただ、禁煙外来の保険適用は通院開始から3ヶ月間だけで、それ以降になると自費になるという罠があります。
一年経過するとまたそこから3ヶ月になるわけですが、まあその頃医者に行くとなれば明らかに禁煙失敗している訳です。
いざやっぱり薬の効果があったなんて後になってわかって、そのとき医者に行くとなったら自費とかになると涙目なわけで、とりあえずチャンピックス確保目的でちゃんと病院には行っておこうと思います。
一酸化炭素濃度測定も何となく気になりますし。
ああ、ちなみに一酸化炭素濃度は一回目は20ppm, 二回目は7ppmでした。
二回目は計測の二日前が前述のたばこをもらった日だったのも影響しているのでしょう。

ところで、2010/10/12から新規の禁煙外来患者に対するチャンピックスの処方が中止になっているようです。
ファイザーより

経口禁煙補助薬 『チャンピックスR錠』の欠品について

ファイザー株式会社(本社:東京都、社長:梅田一郎)が、製造輸入販売しておりますニコチン依存症の喫煙者に対する禁煙補助薬「チャンピックスR錠 0.5mg、同錠1mg」(一般名:バレニクリン酒石酸塩)は、本年8月まで毎月約7万人分を供給して参りました。10月からのたばこ税増税等に伴う禁煙意識の高まりにより、禁煙外来を受診される方が増え9月は約17万人分の供給となりました。更に、10月は6日の時点ですでに約8万人分の供給となり、当初の予測をはるかに上回ったため、現在、ご要望に応じたチャンピックス錠の供給ができない状況が発生しております。

チャンピックス錠による治療を希望される皆様ならびに医療関係者の皆様には、多大なるご迷惑をお掛けすることになりましたことを心よりお詫び申し上げます。

弊社では、既にチャンピックス錠で治療を始められている患者様の治療継続を最優先と考えております。新たに禁煙治療を希望される患者様については、しばらくの間チャンピックス錠の処方を延期していただくよう、医療機関・薬局ならびに医療関係者の皆様にご協力をお願いしております。併せて当分の間、疾患啓発広告を自粛することとしました。

なんというか、予定通りっちゃ予定通りな流れですね。
おかげで禁煙をサポートとかいうサイトも工事中になっております。
このサイトで舘ひろしの禁煙プロモみたいなのみれたんですけどね。

まあ、果たしてこのままあっさりとたばこ吸わなくなるのかのー。

新しいキーボード

前々からキーボードを変えたいとおもっていたんだけど、ずっとかえずにきたんだけど、ついにぽちった。
今まではRealforce91UBK。
そしてぽちったのはRealforce86U。
91UBKと86Uとで違いのうち、個人的なポイントは以下の点。

  • ASCII配列
  • 左下CtrlとCapsキーの入れ替え可能

そのほかは基本色以外は91UBKと同じなんだけども、スペースバーが長くなったのは気分的にちょっといいかもしれない。
といってもスペースの誤打は91UBKでも全然なかったので、あくまでも気分的に。
それよりもEnterの縦幅が小さくなったのでそっちの誤打がまだちょいちょいあるけどまあそれはしばらく使っていればなれるだろう。
色はダイヤテックが一時逆輸入していたRealforce87UとアーキサイトのRealforce87UBに黒があるわけだけども、前者はもう基本的に売ってない、後者は86Uと比べて5000円くらい高いということで、特に悩まずに白。
右Windowsキーとかいらないし。
っていうかそもそもWindowsキーもアプリケーションキーもいらないと思っている人はきっと多いはず。
ちなみに87Uは韓国のLEOPOLDとかいうところ向けの東プレOEMっぽい。

ついでに、87UBには通常モデルと静音モデルがあるんだけども、静音モデルには特に興味なかったっていうか値段が静音モデルと通常モデルが同じだったら考えただろうけど静音モデルの方が普通に高いのでその時点で除外だったし。
ちなみに価格.comには2010/10/13現在、なぜか87UBは静音モデルだけしか掲載されておらず、通常モデルが掲載されていないのは何かの陰謀だろうかとか思う。

なんにしてもこのキーボード、ほしいと思ってからかれこれ一年以上経過している。
たぶんこのキーボードが出た頃になんかエントリー書いてるんじゃなかろうか。
と思って検索してみたらやっぱり書いてた。
去年の8月。
結局それ以来、このキーボード以上にほしいキーボードが未だ出てこないというのもあってぽちった。
実際、これにプラスして何か求めるところというのはあまり思いつかない。
強いていうなら、これのALL45gとかALL30gモデルが出たら試してみたいっていうところか。
ただ、東プレはASCII配列のキーボードはOEM品も含めて変荷重モデルしか出していない。
自分が知る限りでは。
そういった意味では106S(PS2接続でALL30gで日本語配列フルキーボード)あたりとも悩んだりしたりしなかったりもあった。
106Sが生産終了っていうのもあったし。
がまあ、後継の108US(USB接続でALL30gで日本語配列フルキーボード)の発表なんかもあったもんで、悩みつつも結局テンキーレス&ASCII配列&CtrlとCapsの入れ替えの方に傾いたっていう。
特にPS2接続信者っていうこともないし。
6キーを超える同時押しができないと困るといった条件に遭遇したことがないし、これからも遭遇しそうな気配もないし、USB接続だとレスポンスが遅くていらいらするという感覚も持たないので。
ああ、でもそういえば思い出したけど、昔はPS2のキーボードじゃないとBIOSで操作不能だったなー。
最近のBIOSはUSB接続のキーボードでも難なく動いてくれるけど。
っていうか、PS2ポートは消滅の方向に向かっているから動いてくれなきゃ困る時代になったわけですが。
まあその頃はそういった意味ではPS2信者でした。
まあ、そういうわけで、今となっては108USの発表は106Sの存在継続と個人的にはほぼ同義だったので、108USの発表がなかったら下手したら106Sと86Uの両方を買っていたかもしれないが、とりあえず106Sを急いで確保する必要性がなくなったわけだ。
いや、さすがに両方は買わないで106Sだけだっただろう、やっぱり。
高いし。
まあ、とりあえず、当分はこのキーボードメインでいくんだろうな、うん。