ディレクトリ内のファイルの一覧を取り出したい

[上に] [前に] [次に]
GOW [E-Mail] 1999/12/16(木) 10:35:32
ディレクトリー'xxx'内にある拡張子'.zzz'のファイルの一覧
を取り出すスクリプトがうまく行かずにこまってます。

opendir(DIR,'xxx');
@LIST = grep /\.zzz$/,readdir DIR;
closedir(DIR);

ディレクトリxxxには、すでに拡張子'.zzz'を
もったファイルを入れているにもかかわらず、
これで配列@LISTに一覧が入ってくれません。

よろしくお願いいたします。

剃毛切開 1999/12/16(木) 10:48:39
../199912/99120218.htm

を参考にすべし!
これは、拡張子名が「.jpg」の場合だけだけど、それを「.zzz」に変えればいいのでは?

aqua-J 1999/12/16(木) 11:52:52
上の例を取れば、
>@LIST = grep /\.zzz$/,readdir DIR;
@LIST = grep(/\.zzz$/,readdir(DIR));

でいけると思いますが。

ふじ 1999/12/16(木) 14:58:22
最初のスクリプトでいけそうなものですが、こういう時は

opendir(DIR,'xxx') or die $!;

で、まずディレクトリが開けているかをチェック。
#カレントが違ってたりするかもしれないし。

aqua-J 1999/12/16(木) 15:20:17
>最初のスクリプトでいけそうなものですが、
確かに、これでもいけましたね。

@LIST = grep /\.zzz$/,readdir DIR;
#動作確認しました。

GOW 1999/12/17(金) 13:02:44
[[解決]]
みなさん、ありがとうございました。
@LISTの中にちゃんとファイルのリスト入っていました。
他にバグあって、僕の勘違いでした。

申し訳ありません。

[上に] [前に] [次に]