2011-01-01から1年間の記事一覧

特定の文字が含まれる最後の行

grepとtail -n1を組み合わせてもできるけど、 たとえば行末に$という文字がある最終行の表示。 > sed -n '/\$$/h;${g;p}' file 参考:http://www.ishilab.net/~ishihara/tips/sed.txt

C++の参照は再初期化できない

ある関数の戻り値がクラス参照となっていて、それを何度か呼び出す場合、別名で何個も作るのが面倒で、思わず使いまわした場合。コンパイルは通るが大変なことに。 class CTest { public: int m_nValue; };CTest g_x[2];CTest& getX(int n) { return g_x[n];…

cgiをstrace

次のようなスクリプトをCGIの名前で作成して、 元のを hoge.cgi.orig にリネームする。 #!/bin/sh /usr/bin/strace -f -o strace$$ $0.orig $@結果をサブフォルダに入れるのも少し修正すればできるが、 サブフォルダをchownでapacheに変更するのを忘れないよ…

cygwinでwatchはprocps、clearはcursesを入れると使えるようになる

disk fullは次のように、bs * count サイズのファイルが作れる。 > dd if=/dev/zero of=zero.dat bs=1M count=1024

SQLiteではディレクトリエントリのfsyncもちゃんとできている

「ウェブアプリケーションにおけるHDDの正しい使い方」のコメントで、 > SQLite のジャーナルが消失する問題 (ディレクトリエントリを fsync してなかった) > といったものもありましたしSQLiteのソースで、どうやっているか確認。 ちゃんとfsyncしている。W…

DELL OPTIPLEX 760にCentOS 5.3で起動が安定しない

起動が安定しない。起動後すぐに自動的にリブートしてしまうことがある。 そのまま何度か再起動していると成功したり、2、3度試しても駄目だったら、 kernelの起動パラメータにpci=nommconf noacpi noamp noapic irqpollをつけたり (このうちのいくつかを…

pythonのThreadingTCPServerで大量にスレッドを生成するとエラーになる

Linuxだとスタック用のメモリ不足が原因にあるようです。 > threading.stack_size(64*1024) を入れると回避できます。ulmit -sでも回避できます。スレッドごとにスタックって持っているんですね。 今更ながらあまり気にしたことがありませんでした。スタック…