Thread Ersetzen von Zeilen mit Strings und Zahlen in längerem File (21 answers)
Opened by Erin at 2012-08-01 17:03

Linuxer
 2012-08-01 22:18
#160466 #160466
User since
2006-01-27
3891 Artikel
HausmeisterIn

user image
Da Du es ja gern als Skript haben willst, hier eine Lösung als Skript, das aber immer noch die Perl-Switches "zur Abkürzung" verwendet:

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#! /usr/bin/perl  -pi.bak

# quick and dirty script
# please consult perldoc perlrun for information about the used switches -p -i
# or online at: http://perldoc.perl.org/perlrun.html

use strict;
use warnings;

use vars qw( $search $replace );

# set some values at the start of program
BEGIN {
    $search  = "abc\nabc\nabc";
    $replace = "123\n123\n123";

    # make us read a complete file at once
    $/ = undef;
}

# the following code is run every time a new line or dataset is read
# beware of the -p switch on shebang.
# each modified datafile is backed up before; see -i.bak on shebang

s/$search/$replace/msg;


Verwendung (auf der Kommandozeile/Shell):

Code: (dl )
perl skript.pl *cutout.wrl


Logischerweise vorher mit Testdateien ausprobieren; dann erst auf die echten Daten loslassen.
meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!

View full thread Ersetzen von Zeilen mit Strings und Zahlen in längerem File