Hallo Sascha,
noch mal sorry, dass die Antwort etwas länger gedauert hat …
Versuch mal folgendes Script:
(Anm.: $in_dir gibt das Verzeichnis an, in dem deine Dateien liegen,
$out_dir gibt das Verzeichnis an, in dem die Dateien nach der Änderung
unter gleichem Namen geschrieben werden. Entsprechend sollten $in_dir
und $out_dir natürlich möglichst nicht die gleichen sein … Du
bekommst durch den find immer volle Pfade zurückgeliefert, so dass der
split das ganze für jede Datei mit / als Trennzeichen zerhackt, in ein
Array packt und nachher immer nur mit dem letzten Arrayeintrag weiter
arbeitet, da dieser ja den Dateinamen ohne Pfad darstellt.)
#!/usr/bin/perl
$in_dir=’/root/scripts/wewewa/files/’;
$out_dir=’/root/scripts/wewewa/output/’;
@files=find $in_dir -type f
;
chomp (@files);
foreach (@files)
{
@string = split(///, $_);
chomp (@string);
$anz_string = $#string;
open (IN, „$out_dir$string[$anz_string]“);
@INPUT=;
foreach (@INPUT)
{
chomp ($_);
$write=$_." Dieser Text wird an jede Zeile angehangen";
print OUT $write, „\n“;
}
close (IN);
close (OUT);
}
Viele Grüsse,
Thomas