«前の日記(2013年2月3日(日)) 最新 次の日記(2013年2月9日(土))» 編集

徒然日記


2013年2月7日(木) [長年日記]

今日のお題: directoryはread()できるか

むかしはディレクトリって普通にopenしてreadできんかったっけ? 2013-02-07 22:34:13 +0900 via HootSuite

@kitaj 今もやれば普通にできるんでは? 2013-02-07 23:14:46 +0900 via web

@smbd ほんとにか? 2013-02-07 23:26:14 +0900 via Twitter for iPhone

うーん。そう言われると途端に不安に…。ということで調べてみた。

結論: Linuxでは"Is a directory"[EISDIR]でエラー。FreeBSD(4,6,8で調べた)は普通にread()できて、directory entryを得られる。

たとえばこんなので

Linux:

$ ./opendir
read failed
Is a directory

FreeBSD:

$ ./opendir
*  ..+ fuga,  moge

(terminal上で化けてる)

こんなかんじで、LinuxはEISDIRが帰ってきて、FreeBSDは(NFSとかでなければ)directory entryが書き出される。

この辺りはちゃんとmanに書いてあるっていうね… Linux, FreeBSD

数年前、仕事でBSDなOSを触ってたときは間違ってdirectoryをcatするとdirectory entryが表示されてて、Linuxでcatすると"cat: /tmp: Is a directory"と表示されるのは、Linuxのcatがdirectoryの場合はエラーになるように処理してるんだと思ってたら、そもそもEISDIRっていうのがあったんですなー

Tags: linux ネタ

gist pluginで貼りつけたsourceの背景がケバい…

↑のsourceをgist pluginで貼りつけたわけですが、当初こんなケバい事になってました。なにこれェ…なにこれェ…

これ、gistの埋め込みが

<table cellpadding="0" cellspacing="0" class="lines highlight">

こんなかんじでhighlight classが設定されていて、highlight plugin用にhighlight classの背景が全部黄色になるようにしてたからだった…

append-cssで

table.highlight { background-color: transparent; }
を追加して、ひとまず正常な色に。

Tags: tdiary



«前の日記(2013年2月3日(日)) 最新 次の日記(2013年2月9日(土))»