#!/usr/bin/perl
use File::Basename;

$DIR = $ARGV[0];
$CHECK = '/mnt2/Plamo/CDimg/plamo-4.01.md5sum';

opendir(DIR,$DIR);            # ディレクトリのオープン
foreach ( readdir(DIR) ) {
    next if /^\.\.?$/;       # "."と".."を削除
    $path = $DIR."/".$_;
    if ( -d $path ) {         # ディレクトリなら処理する
        if ( $dirs ne "" ) { $dirs = "$dirs,"; }
                             # $dirsが空でないなら","を追加
        $dirs = "$dirs$_";   # $dirsにディレクトリ名を追加
    }
}
closedir(DIR);               # ディレクトリのクローズ
@dirs_list = split(/,/,$dirs);    # ディレクトリリストを配列に分割

foreach $i (@dirs_list) {
    print "dirs: $i\n";
    if ( ! -d $i ) {
	mkdir ($i, 0777);
    }
    chdir ($i);
    $target_dir = "../".$DIR."/".$i;
    open(IN, "find $target_dir -newer $CHECK | grep tgz |");
    @org = <IN>;
    close(IN);
    
    for ($i = 0; $i <= $#org; $i++) {
        if ( $org[$i] !~ /old\// ) {
	    chomp($org[$i]);
	    $filename[$i] = basename($org[$i]);
	    print "updating $filename[$i]\n";
	    unlink( $filename[$i] ) if -e $filename[$i]; 
	    symlink( $org[$i], $filename[$i]);
	    #printf(" ln -sf %s %s \n", $org[$i], $filename[$i]);
        }
    }
    chdir ("..");
}



