perlunity.de - PERL | JAVASCRIPT | PHP | MySQL | APACHE



#!/COMMUNITY

Members: 5374
davon online: 1
weitere User: 18
Click for quality!




11.02.2012 / 07:15

Community-Member werden   |   Paßwort vergessen   |   OnlineMonitor (1) Wer ist online ... OnlineMonitor starten !
     

 

Home


PERLscripts


PHPscripts


JAVAscripts


Hilfreiches


Links2www


Newscenter


Community


Interna




Community  »  Perl: Allgemeines Forum zur Themenübersicht Themensuche Themenansicht in Thread-Modus


BeitragSuchen und ersetzen in mehreren Dateien auf dem ganzen Rechner
Seitenanfang
Hallo an Euch alle,

ich bin ein Neuling in der Perl Welt. Ich habe zwar schon ein paar Scripte erfolgreich geschrieben, aber nun komme ich nicht weiter.
Vielleicht hat einer von Euch eine Idee...
Ich versuche einen Rechner ab einem bestimmten Verzeichnis nach Dateien durchsuchen zu lassen die einen bestimmten Begriff beinhalten. So weit so gut. Nun soll er diesen Begriff mit einem anderen Begriff ersetzen.
Aber er macht es nicht...
Mein Script beinhaltet folgendes:

$command=("find $verz -type f | xargs grep -il $such");
open (DATEIEN,"$command|");
while ($datei=<DATEIEN>){
tie @zeilen, 'Tie::File', $datei or die "konnte datei nicht oeffnen";
for (@zeilen){
s/\$such/\$ersetz/g;
}
untie @zeilen;

Was mache ich da falsch?
Vielen Dank schon mal

Datum: 16.03.2006-09:26

Beitragre: Suchen und ersetzen in mehreren Dateien auf dem ganzen Rechne
Seitenanfang
Hallo,

ich hab meinen Fehler gefunden ...
mit einem chomp ($datei); ist alles gut.

Datum: 16.03.2006-12:35

Beitragre: Suchen und ersetzen in mehreren Dateien auf dem ganzen Rechne
Seitenanfang
Hi,

schau Dir mal die Dokumentation zu File::Find an. Den Systemaufruf brauchst nicht. ;-)

http://search.cpan.org/~nwclark/perl-5.8.8/lib/File/Find.pm

-uw

Datum: 16.03.2006-13:14

Beitragre: Suchen und ersetzen in mehreren Dateien auf dem ganzen Rechne
Seitenanfang
Hallo,

das macht das ganze noch etwas übersichtlicher...
Vielen Dank für den Tipp.
Werde ich gleich mal ausprobieren.

Datum: 16.03.2006-13:40

-






-
-