#!/usr/bin/perl use Config::Simple; use Getopt::Std; use Unicode::Japanese; getopts("f:", my %opt_); $cfg = new Config::Simple($opt_f); $dir = $cfg->param('dir') . "/wiki"; $url = $cfg->param('url'); $estcmd = $cfg->param('estcmd'); $cache = $cfg->param('cache'); $db = $cfg->param('db'); $code = $cfg->param('code'); print "$estcmd\n"; opendir(DIR, $dir); while( $file = readdir(DIR)){ if ($file ne "." and $file ne ".."){ $cachefile = $file; system ("$estcmd draft -il 1 -ic $code $dir/$file > $cache/$file"); $file =~ s/([0-9a-fA-F][0-9a-fA-F])/chr(hex($1))/ego; $fileurl = $file; $fileurl =~ s/.txt//; $fileurl = $url . "/pukiwiki.php?" . $fileurl; $fileurl = Unicode::Japanese->new($fileurl, 'euc')->get; open DRAFT_, ">$cache/${cachefile}_" or die "cannot open ${cache}/${cachefile}_"; open DRAFT, "$cache/${cachefile}" or die "cannot open ${cache}/${cachefile}"; while(){ if (/^\@uri/){ print DRAFT_ "\@uri=$fileurl\n" }else{ print DRAFT_ ; } } close DRAFT; close DRAFT_; system("$estcmd put $db $cache/${cachefile}_"); #print("$estcmd put $db $cache/${cachefile}_"); unlink("$cache/${cachefile}_"); unlink("$cache/${cachefile}"); # print "$fileurl\n" } }