上位系からもらってるテキストデータを仕様書と見比べてると、どうも1レコードのバイト数が違う気がして仕方がない。今回のシステムはこれまでもらってたデータをそのままするっともらってるはずなので、以前の仕様書だからって嘘が書いてあるはずはないんだけどなあ。いやまあ仕様書と実際が違うというのはよくある話なんだけど。ちなみにそのデータ、送り側の上位系と今回もらう元の中位系と今実際にもらってるデータが全部食い違ってたりする。いや、その中位系のファイルの仕様書とは違うのだが、DBの定義とは一致してたりする。もう何がなんだか。
サーバに置いてある最新のexeを取得するbatファイルがあるんだけど、これが自分自身もサーバから取得するように書いてある。exeと違ってbatは実行中でもロックされないから書き換えられるのは知ってたけど、自分自身を書き換えるbatってどう動くんだろうな。と、そんなことを思ったので実験してみた。書き換えはcopyで良く似た別ファイルをよそから上書きする方法で実現。で、結論としてはちゃんと検証したわけじゃないけど、書き換えられる前のファイルでコピーのコマンドまで実行されて、以後は上書きされたあとのコマンドが実行される。この、前と後の基準は何行目とか同じコマンドのあととかそういうんじゃなくて、先頭からのバイト数で見てるっぽい(厳密には検証してないが)。置き換えた後のファイルだけremで大量にコメント入れてるとその辺わかってもらえると思う。実行中のバッチで自分自身を書き換えるのがこんな危うい話だとは。俺の予想では、上書きされる前のが最後まで実行されると思ってたよ。実行開始のタイミングで全部メモリに読み出すかなんかしてるんだと思ってた。
株。fonfunを147kと146kで両建て(現物だけど)。1000円抜いた。図らずもなんか今日+9kとかになってるんだけど、それは今日じゃなくて一昨日の成果。まあ一昨日も2000円抜きをしようと思って2回転目で売り切れなかっただけなんだけど。当面140k台は買いってことでいいのかなあ。130k台まで押すようなら80%まで買い進めるけども。