#!/usr/bin/perl
use strict;
use Getopt::Long;
$Getopt::Long::autoabbrev = 1;
my %opt = ();
GetOptions(\%opt, "number=s", "output=s");
my $number = $opt{'number'} || 5;
my $output_fn = $opt{'output'} || "a.js";
my $now = time;
my $dirname = shift;
my @tb_sorted = sort {$b->[1] <=> $a->[1]}
map { [$_, (stat $_)[9]] } <$dirname/2*.stor>;
my $str;
for (0..($number - 1)) {
my $e = int(($now - $tb_sorted[$_][1]) / 3600);
my $m = ($e < 24) ? $e."H" : int($e/24)."D";
my ($id) = ($tb_sorted[$_][0] =~ m!/(\d+).stor!);
$id =~ s/^(\d{4})(\d\d)(\d\d)/$1-$2-$3/;
$id =~ s/-(\d\d)(\d+)$/-$1-$2/;
$str .=
qq{document.writeln('- <a href="$id.html">$id</a> ($m)<br>');\n};
}
open(F, "> $output_fn") or die "Can't open $output_fn : $!\n";
print F "$str\n";
close(F);
以下のような記述を .crontab に追加。HTMLファイル(chalow なら cl.conf のテンプレート)にこんなの追加。0 * * * * /home/yto/www/clog/tb/recent_tb.pl /home/yto/www/clog/\ tb/tb_data -n 5 -o /home/yto/www/var/tb.js
<script language="JavaScript" src="http://nais.to/~yto/var/tb.js"> </script>
#!/usr/bin/perl
use strict;
use Getopt::Long;
$Getopt::Long::autoabbrev = 1;
my %opt = ();
GetOptions(\%opt, "number=s", "output=s");
my $number = $opt{'number'} || 5;
my $output_fn = $opt{'output'} || "a.js";
my $now = time;
my $dirname = shift;
my @tb_sorted = sort {$b->[1] <=> $a->[1]}
map { [$_, (stat $_)[9]] } <$dirname/*.js>;
my $str;
for (0..($number - 1)) {
my $e = int(($now - $tb_sorted[$_][1]) / 3600);
my $m = ($e < 24) ? $e."H" : int($e/24)."D";
my ($id) = ($tb_sorted[$_][0] =~ m!/([\d-]+).js!);
$str .=
qq{document.writeln('- <a href="$id.html">$id</a> ($m)<br>');\n};
}
open(F, "> $output_fn") or die "Can't open $output_fn : $!\n";
print F "$str\n";
close(F);
以下のような記述を .crontab に追加。HTMLファイル(chalow なら cl.conf のテンプレート)にこんなの追加。0 * * * * /home/yto/www/clog/kblog/recent_cm.pl /home/yto/www/clog/\ kblog -n 5 -o /home/yto/www/var/cm.js
<script language="JavaScript" src="http://nais.to/~yto/var/cm.js"> </script>





