window执行脚本
%~d0
cd %~p0
perl makesql.pl >loadtables.sql
pause
perl 代码:
#!perl -w
use strict;
my $BinPath = (map{s#\n##g;$_} `cd`)[0];
$BinPath .= "\\";
my $SQLPrefix = "LOAD DATA INFILE '";
my $SQLLastfix = "' IGNORE INTO TABLE TABLENAME FIELDS TERMINATED BY ',' LINES TERMINATED BY '\\n' IGNORE 1 LINES;";
&LoadToATable("KPI_*","TABLENAME1");
&LoadToATable("AAAA_*","TABLENAME2");
sub LoadToATable($$){
my ($FileNamePrefix,$TableName) = @_;
my @LTEUUExtendCELLKPIFiles = glob($FileNamePrefix);
my $Filename;
my $LoadSQL;
foreach $Filename (@LTEUUExtendCELLKPIFiles){
$LoadSQL = $SQLPrefix;
$Filename = $BinPath.$Filename;
$Filename =~ s#\\#/#g;
$LoadSQL .= "$Filename";
my $MySQLLastfix = $SQLLastfix;
$MySQLLastfix =~ s#TABLENAME#${TableName}#g;
$LoadSQL .= $MySQLLastfix;
print "$LoadSQL \n";
};
}
__END__