最新閲覧日:

あるディレクトリのファイル数の取得しその数を「ファイルは○個あります」と表示したいのですが。拡張子jpgのファイル数だけを取得したいです。

A 回答 (4件)

こんな感じでしょうか.



==
#!/usr/bin/perl
# ↑ perl のパスは適宜、変更

# .jpg のリストを取得
@files = glob("*.jpg");

# 個数
$count = 0;

foreach $file (@files)
{
 # 通常のファイル
 if ( -f $file)
 {
  $count += 1;
 }
}

print "ファイルは " . $count . "個あります\n";

==
    • good
    • 0

さっきの続きでいくなら、



## 以下一行追加 変数のを初期化。以下、jpgファイルを見つけるたびにカウントを増やすようにする。
$i = 0;
while ($current_file = readdir(DIR)) {
if (substr($current_file,-4,4) eq "\.jpg") {
## 以下一行追加 ここに来るということはファイルが有ったという事なので1つカンターを増やす。
$i++;
:
中略
:
} elsif ( $current_file !~ /[\.]+/ && stat($current_file) && -d _ ) { # ., .. は除く。 statして directoryかどうかチェックする
:
中略
:
}
}
closedir(DIR);

## 以下一行追加 書式は適宜必要に応じて記述変更するのが吉。
print "<TD ALIGN=RIGHT>ファイルは $i個あります\n";
print "</TABLE>\n";
exit:
    • good
    • 0
この回答へのお礼

ひとつひとつの命令の意味がわかっていない部分があるので単に追加するのもむずかしかったですが、やっとこさできました。ありがとうございました。(^_^)

お礼日時:2000/12/27 08:38

Windows での説明を書いていきます。



「検索」を呼び出します。
そこで、検索の「参照」で、jpg の拡張子の数を知りたいディレクトリーを指定して下さい。

あとは、検索の「名前」に「.jpg」と入力し、検索をかければ、この「.jpg」の数を示してくれることになります。

Macについては、分かりません。すみませんが‥‥。

参考助言にでもなれば、幸いです。
tukitosan でした。
    • good
    • 0

FinFirstFile, FindNextFile で数えてください。

ハンドルを FileClose で閉じるのを忘れずに。
    • good
    • 0

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

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード


このQ&Aを見た人がよく見るQ&A

このカテゴリの人気Q&Aランキング

おすすめ情報

カテゴリ