以下のような記述を .crontab に追加。#!/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);
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>
以下のような記述を .crontab に追加。#!/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);
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>