#!/usr/bin/perl #solve the problem about the blanks in the link of HTML files downloaded by CTERM. use warnings; my $filenum1=0; my $filenum2=0; my @filedata=(); my $filelength=0; my $i=0; mkdir("improved",0007); opendir(GOOD,"improced"); print "Please enter the start number of the files:\n"; $filenum1=; chop($filenum1); print "Please enter the end number of the files:\n"; $filenum2=; chop($filenum2); open(DATA, ">improved/index.htmll"); @filedata=get_file_data("index.htmll"); foreach my $line (@filedata) { $line=~s/a href=" /a href="/g; $line=~s/htm ">/htm">/g; } #clean the useless information added by CTERM. splice(@filedata,3,1); splice(@filedata,6,6); $filelength=@filedata; splice(@filedata,$filelength-4,1); print DATA @filedata; close(DATA); $filenum2++; for($i=$filenum1;$i<$filenum2;$i++) { open(DATA, ">improved/$i.htmll"); @filedata=get_file_data("$i.htmll"); foreach my $line (@filedata) { $line =~s/a href=" /a href="/g; $line=~s/htm ">/htm">/g; } #clean the useless information added by CTERM. splice(@filedata,3,1); splice(@filedata,6,6); $filelength=@filedata; splice(@filedata,$filelength-4,1); print DATA @filedata; close(DATA); } closedir(GOOD); exit; sub get_file_data { my($filename) = @_; use strict; use warnings; # Initialize variables my @filedata = ( ); unless( open(GET_FILE_DATA, $filename) ) { print STDERR "Cannot open file \"$filename\"\n\n"; exit; } @filedata = ; close GET_FILE_DATA; return @filedata; }