Jiro KANAYAMA
majir****@openj*****
2002年 12月 9日 (月) 00:23:31 JST
金山@OpenJEと申します。 sys-mkdirの仕様と挙動について、相違点を見つけましたので、お知らせ差し 上げます。 test/system.scmで (test "mkdir" "drwxr-x---" (lambda () (sys-mkdir "test.dir" #o750) (get-lsmode "test.dir"))) というテストがありますが、たとえば umask 077 のような状態でmake testすると、 test mkdir: expects "drwxr-x---" => got "drwx------" ということで、Errorとなってしまいます。 infoによると、 日本語版:(「機能」となってるのはご愛敬:-) - 機能: sys-mkdir pathname mode [POSIX] Makes a directory PATHNAME with mode MODE. The parent directory of PATHNAME must exist and be writable by the process. To create intermediate directories at once, use `make-directory*' in `file.util' (see *Note Directory utilities::). 英語版: - 機能: sys-mkdir pathname mode [POSIX] ディレクトリPATHNAMEをモード MODEで作成します。PATHNAMEの親ディレクトリは存在して、プロセスが 書き込めるようになっていなければなりません。中間のディレクトリも 一度に作成するには、`file.util'の`make-directory*'が使えます (see *Note ディレクトリユーティリティ::)。 ということですので、厳密には、仕様と挙動が食い違っていることになります。 なお、環境は次の通りです。 OS: Redhat Linux 7.2 Shell: Zsh 4.0.2 Gauche: 数日前のCVSツリーでス… どっちに合わせるか、どうあるべきかについては、ちょっと考えないといけな いところだと思いますが、とりいそぎご報告でした。 <profile> <name> Jiro KANAYAMA </name> <email> majir****@openj***** </email> <department> OpenJE.org </department> </profile>