SkÃ¥ne Sjælland Linux User Group - http://www.sslug.dk Forside   Tilmelding   Postarkiv   Forum   Kalender   Søg
MhonArc Dato: [Date Prev] [Kronologisk oversigt] [Date Next]   TrÃ¥d: [Date Prev] [Oversigt trÃ¥de] [Date Next]   MhonArc
 

RE: [PERL] redigering i fil



#!/usr/bin/perl -w

use strict;

die "usage: $0 alias newuser\n" unless (defined($ARGV[1]));

my $alias = $ARGV[0];
my $newuser = $ARGV[1];

while (<STDIN>) {
        if (/^$alias/) {
                s/^(.*)$/$1, $newuser/;
        }
        print STDOUT $_;
}

exit 0;



... tager whatever fil m. aliasagtig struktur på stdin, og leverer den
modificerede
på stdout. Man kan jo wrappe noget shell omkring hvis man rent faktisk
vil have 
/etc/aliases modificeret. Så kan man også få kørt newaliases og få lave
hashen.

/Jesper

-----Original Message-----
From: Frank Nørvig [mailto:sslug@sslug
Sent: 14. maj 2002 13:48
To: sslug@sslug
Subject: [PERL] redigering i fil


Hejsa

Jeg er relativt ny i Perl-programmering, og jeg ønsker at lave et script
som
redigerer i min /etc/aliases fil.

I aliases kan der f.eks. stå (blandt hundredevis af andre af samme
slags):
wdkfrno:    sslug@sslug
frank.norvig:    wdkfrno

Mit script skal kunne gå ind i aliases og finde "wdkfrno:
sslug@sslug"
og tilføje/ændre så der kommer til at stå "wdkfrno: sslug@sslug,
sslug@sslug"

Altså tilføje til en enkelt linie i aliases-filen.

Kan dette lade sig gøre i Perl uden de store krumspring?

Mvh Frank Nørvig




 
Forside   Tilmelding   Postarkiv   Oversigt   Kalender   Søg

 
 
Henvendelse vedrørende websiderne til <www_admin>. Senest ændret 2005-08-10, klokken 19:54
Denne side vedligeholdes af MHonArc .