tomcat
|
#t007.htm#,
HelloWorld.class,
HelloWorld.java,
TRANS.TBL,
backup5,
backup6,
backup7,
change_max.pl,
it006.html,
it007.html,
it008.html,
it009.html,
junk,
nup.pl,
onedown.pl,
oneup.pl,
t001.html,
t002.html,
t003.html,
t004.html,
t005.html,
t006.html,
t007.html,
t008.html,
t009.html,
t010.html,
t011.html,
t012.html,
t013.html,
t014.html,
t015.html,
t016.html,
t017.html,
t018.html,
t019.html,
t020.html,
t021.html,
t022.html,
t023.html,
t024.html,
t025.html,
t026.html,
t027.html,
t028.html,
t029.html
|
|
|
#!/usr/bin/perl
if ($#ARGV == 0) {
$n = 0;
$dir = ".";
$file = $ARGV[0];
}
elsif ($#ARGV == 1) {
if($ARGV[0] =~ /^\d+$/) {
$n = $ARGV[0];
$dir = ".";
}
else {
$dir = $ARGV[0];
$n = 0;
}
$file = $ARGV[1];
}
elsif ($#ARGV == 2) {
if($ARGV[0] =~ /^\d+$/) {
$n = $ARGV[0];
$dir = $ARGV[1];
}
else {
$dir = $ARGV[1];
$n = $ARGV[0];
}
$file = $ARGV[2];
}
else {
die "Usage: change_maxnum.pl [dir] [n] nameNNNN.html\n" .
" Changes maxnum to n in files: nameNNNN.html, name(NNNN+1).html...\n" .
" If n not given, takes the highest number of the file name.\n" .
" If dir not given, current directory is assumed.\n";
}
if($file =~ /^([a-z]+)(\d+)\.html$/) {
$fname = $1;
$fnumber = $2;
}
else {
die "cannot parse file name $file";
}
$numlen = length($fnumber);
$format = "%0" . $numlen . "d";
opendir(DIR, $dir) || die "Cannot open directory $dir for reading\n";
$maxnum = 0;
while($entry = readdir(DIR)) {
if($entry =~ /^$fname(\d+)\.html$/ ) {
print STDOUT "$entry\n";
if($1 > $maxnum) {
$maxnum = $1;
}
}
}
if($n == 0) {
$n = sprintf("%d", $maxnum);
}
print STDOUT "new maxnum is $n\n";
for ($i = $fnumber; $i <= $maxnum; $i++) {
$filename = $dir . "/" . $fname . sprintf($format, $i) . '.html';
print STDOUT "File: $filename\n";
$temp = "/tmp/junk-$$";
if(-e $filename) {
open(FIL, "<$filename") || die "cannot open $filename\n";
open(TEMP, ">$temp") || die "cannot open $temp\n";
while($line = ) {
if($line =~ /^(var\s*maxnum\s*=\s*)(\d+)([^0-9].*)$/) {
$line = $1 . $n . $3 . "\n";
print STDOUT "changed to:\n$line";
}
print TEMP $line;
}
close(FIL);
close(TEMP);
system("mv $temp $filename");
print STDOUT "Moved file $temp, to file $filename\n";
}
else {
print STDOUT "Missing file $filename\n";
}
}
|