Files
2024-10-14 00:08:40 +02:00

192 lines
4.8 KiB
Perl

#!/bin/perl
use strict;
my $linecounter=1;
my $start;
my $end;
my @input;
my ($ss,$mm,$hh,$dd,$mon,$yy,$we,$doy,$st)=localtime;
########################################################
## SET OUTPUT DIRECTORY HERE ##
########################################################
my $output_dir = 'd:\kunden'; # output verzeichnis
########################################################
## SET INPUT DIRECTORY HERE ##
########################################################
print "Dateien gefunden:\n";
foreach (<d:\\mt_2_check\\aa.*>) { # input verzeichnis
print "$_\n";
}
my $i=1;
foreach (<d:\\mt_2_check\\aa.*>) { # input verzeichnis
print "Bearbeite $_\n";
open AA, "<$_";
my @input_one=<AA>;
close AA;
my $datum=sprintf("%04d-%02d-%02d",$yy+1900,$mon+1,$dd);
`ren $_ done.$i.$datum.txt`;
@input=(@input,@input_one);
$i++;
}
foreach my $line (@input) {
$start = $linecounter-18 if ($line =~ /SSSSSSSSSS TTTTTTTTTTTT AAAAAAAAAA RRRRRRRRRRR TTTTTTTTTTTT/);
$end = $linecounter+17 if ($line =~ /EEEEEEEEEEEE N NN DDDDDDDDDDD/);
if ($end) {
my $filename;
my @new_file;
print "$start, $end, ";
foreach (@input[$start .. $end]) {
if ($filename eq "") {
($filename) = $_ =~ /[ a-z]* ([BK|MKL|MKL#]*[0-9]{4}).*/i;
$filename =~ s/#//;
}
push @new_file, $_;
} # Dateiname um Programm ergänzen
print "PROGRAMM: ";
my $programm;
foreach (@new_file) {
if ($_ =~ /PROGRAMM.*/) {
chomp;
# PROGRAMM : KW375 / 007
# BK8716_KW375-007.txt, BK7822_BOSS-BC202.txt, BK7822_KW375-007.txt, MKL7822_BOSS-BC352.txt
$_ =~ s/\//-/;
($programm) = $_ =~ /PROGRAMM.*:(.*)/;
$programm =~ s/ //g;
print "$programm\n";
last;
}
}
my $completefile=$filename . "_" . $programm . ".txt";
print "$output_dir\\$completefile\n";
open OUT, ">$output_dir\\$completefile";
print OUT @new_file;
close OUT;
$end=0;
}
$linecounter++;
}
# Dateien in Kundenverzeichnisse kopieren
#
my %kvs;
my %dirs;
########################################################
## DO EDIT FROM HERE ##
########################################################
$dirs{'ICF'} = 'd:\kunden\icf\file';
$dirs{'KOCH'} = 'd:\kunden\koch\file';
$dirs{'GRUETZNER'} = 'd:\kunden\gruetzner\file';
$dirs{'TRITRADE'} = 'd:\kunden\tritrade\file';
$dirs{'LUDWIG'} = 'd:\kunden\ludwig\file';
$dirs{'BRAUBURGER'} = 'd:\kunden\icf\file';
$dirs{'KRAUL'} = 'd:\kunden\kraul\mail';
$dirs{'EMPORIUM'} = 'd:\kunden\emporium\mail';
$dirs{'THERMER'} = 'd:\kunden\thermer\mail';
$dirs{'BELGER'} = 'd:\kunden\belger\mail';
$kvs{'3800'}='ICF';
$kvs{'3803'}='ICF';
$kvs{'3804'}='ICF';
$kvs{'3824'}='ICF';
$kvs{'3840'}='ICF';
$kvs{'1265'}='ICF';
$kvs{'1187'}='ICF';
$kvs{'1183'}='ICF';
$kvs{'1163'}='ICF';
$kvs{'1282'}='ICF';
$kvs{'1365'}='ICF';
$kvs{'2286'}='ICF';
$kvs{'2288'}='ICF';
$kvs{'2289'}='ICF';
$kvs{'2185'}='ICF';
$kvs{'2183'}='ICF';
$kvs{'2182'}='ICF';
$kvs{'2845'}='ICF';
$kvs{'2176'}='ICF';
$kvs{'2165'}='ICF';
$kvs{'4184'}='ICF';
$kvs{'6195'}='ICF';
$kvs{'8873'}='ICF';
$kvs{'8872'}='ICF';
$kvs{'8875'}='ICF';
$kvs{'8884'}='ICF';
$kvs{'8888'}='ICF';
$kvs{'8700'}='ICF';
$kvs{'7866'}='ICF';
$kvs{'7855'}='ICF';
$kvs{'7892'}='ICF';
$kvs{'7895'}='ICF';
$kvs{'7826'}='ICF';
$kvs{'7822'}='ICF';
$kvs{'7812'}='ICF';
$kvs{'7806'}='ICF';
$kvs{'7805'}='ICF';
$kvs{'7804'}='ICF';
$kvs{'7801'}='ICF';
$kvs{'6292'}='ICF';
$kvs{'6285'}='ICF';
$kvs{'6180'}='ICF';
$kvs{'6186'}='ICF';
$kvs{'6178'}='ICF';
$kvs{'4185'}='ICF';
$kvs{'4183'}='ICF';
$kvs{'4179'}='ICF';
$kvs{'4265'}='ICF';
$kvs{'4272'}='ICF';
$kvs{'1366'}='KOCH';
$kvs{'7874'}='KOCH';
$kvs{'7846'}='KOCH';
$kvs{'7656'}='KOCH';
$kvs{'7835'}='GRUETZNER';
$kvs{'7828'}='TRITRADE';
$kvs{'8711'}='TRITRADE';
$kvs{'7880'}='TRITRADE';
$kvs{'7824'}='TRITRADE';
$kvs{'7823'}='LUDWIG';
$kvs{'7635'}='LUDWIG';
$kvs{'7633'}='LUDWIG';
$kvs{'7632'}='LUDWIG';
$kvs{'7821'}='BRAUBURGER';
$kvs{'8716'}='BRAUBURGER';
$kvs{'8885'}='KRAUL';
$kvs{'8886'}='KRAUL';
$kvs{'6284'}='EMPORIUM';
$kvs{'7825'}='THERMER';
$kvs{'7847'}='BELGER';
########################################################
## DO NOT EDIT FROM HERE ##
########################################################
chdir($output_dir);
foreach(<*.txt>) {
my $kv;
my $kunde;
my $dir;
($kv) = $_ =~ /.*([0-9]{4})_.*\.txt/;
$kunde = $kvs{$kv};
$dir = $dirs{$kunde};
print "cp $_ $dir\n";
`xcopy /Y $_ $dir\\`;
unlink $_;
}