プロが教える店舗&オフィスのセキュリティ対策術

Perlプログラムにて、

 opendir(DIR, '.');
 @dir_list = readdir(DIR);
 closedir(DIR);

などとすると、そのディレクトリにあるファイルとディレクトリの一覧情報を得ることができますが、この場合、@dir_list にはどのような順番で情報が格納されるのでしょうか?

readdir() 関数の仕様が知りたいです。ご存知の方、ぜひ教えてください。

A 回答 (2件)

仕様という意味ではこちらになるでしょうね。


公式サイトですから。
http://www.perl.com/doc/manual/html/pod/perlfunc …

同じような疑問を持たれた方がおられるようなので、載せておきます。
http://www.computing.net/programming/wwwboard/fo …

ここではファイルシステム依存ということになっていましたが、公式サイトには順番についての記述はありませんでした。

したがって、
> どのような順番で情報が格納されるのでしょうか?
の答えは「決まっていない」になりますね。
処理系依存ということでしょう。

どんな環境でも同じ結果が欲しいというのであれば、@dir_listに対してsortをかけるしかないと思います。

参考URL:http://www.perl.com/doc/manual/html/pod/perlfunc …
    • good
    • 0
この回答へのお礼

素晴らしいアドバイス、ありがとうございます。ご紹介いただいたサイト、見せていただきました。とっても参考になりました!

>答えは「決まっていない」になりますね。
>処理系依存ということでしょう。

なるほど、そういうことでしたか…。それでこういったコードの例文を見ると、@dir_listをいったんソートしているものが多いんですね。

ほんとに助かりました。ありがとうございます(^^)!

お礼日時:2003/05/27 07:02

そんなんやってみればいいじゃん。


Perlのスクリプティングホストの種類とか
バージョンによっても違うんじゃない?
こうはなったけども

.
..
02jXVhQo.C
06B3babN.6
098hSVk6.Z
0A4jAI0d.h
0ckAL0nN.I
0Gh8YPdf.B
0jhFZM1W.M
0kR3589m.P
0NIVBe1e.M
0Thk4emT.a
1.c
10PHP4kW.W
11cUYISZ.Y
17UlecTe.l
19Fg1eLd.o
1dCkN4RD.f
1fJDifWh.0
1fNkP1Ho.B
1glmH3DV.4
1Gpf0WiM.N
1HhVoZIL.l
1IchCFjl.B
1INVG2b7.T
1iSPnQ6d.c
1K6dCXdb.3
1NgbaMa8.a
1odMNBB8.l
1Oi5XfIW.A
1OJUOpNj.D
1oLgcFbI.6
1P3R4B0I.D
1PoWeV5G.Y
1RlMIlPg.h
1SU9c1ZM.h
1Tb1oPQZ.h
20WKONpJ.e
20ZjmAcM.P
24inWajk.2
2bY5kcYH.M
2ciffQcX.j
2dXRVjom.b
2E5GWSg0.0
2hG5bhnb.R
2HHA3CLj.6
2jO5gZb3.l
2KffUlCG.K
2lKOgnho.e
2lnAcdMT.l
2lWDMoRV.C
2neMJEe5.O
2oPgU0gk.p
2Q01LP0c.9
2ReEXN9l.H
2SA3li6E.P
2Xnc4XFi.6
2YGa37d3.R
303VkQUb.6
36OOkU9b.n
3ec22mT7.i
3FBJpIjW.N
3gX2VfcP.W
3I3HJ2Xa.d
3i95EdO5.T
3k6pcaj7.p
3l7FbnE9.b
3m8iiXfa.R
3MbjZ38S.2
3MLHUfVR.F
3mlXWVDh.l
3naUM0e9.J
3NTpPciD.c
    • good
    • 0
この回答へのお礼

>そんなんやってみればいいじゃん。

ある環境で試してみると、結果から答えは推測できますが、正しいという確証が得られないですよね。なので仕様を質問しました。
readdir()の仕様として、「opendir でオープンしたディレクトリハンドルから、ディレクトリエントリを読む。」ぐらいしか検索では見つけられず。

一例、ありがとうございました。参考になります。

お礼日時:2003/05/26 14:19

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!