ちょっとよくわかんないのですが
aaa/id/の下にIDファイルがあるのですか?
この場合の id/は固定でいいんですよね?
print "Content-type: text/html\n\n";
# 対象のディレクトリ
my @dirs = ( 'aaa', 'bbb', );
foreach my $dir (@dirs) {
if (opendir(DIR, "./$dir/id")) {
my @files = grep { !m/^(\.|\.\.)$/g } readdir(DIR);
closedir(DIR);
foreach my $file (@files) {
print "http://***.jp/test/$dir/indexcgi?id=$file\n";
}
}
}