The UNIX and Linux Forums  


Go Back   De Unix-en Linux Forum > Top Forums > Programmeren en Shell Scripting
.
google unix.com



Programmeren en Shell Scripting Post vragen over KSH, CSH, SH, Bash, Perl, PHP, sed, awk en andere shell scripts en shell scripting talen hier.

Meer UNIX en Linux Forum Onderwerpen Misschien vindt u Helpful
Draad Thread Starter Forum Antwoorden Last Post
Perl: string substitutie Patroon: \u003d 'abc ...', Niroj Programmeren en Shell Scripting 14 01-22-2009 04:58 PM
String substitutie Ctrl-Alt-Del Programmeren en Shell Scripting 3 10-14-2008 03:37
string substitutie laxmi Programmeren en Shell Scripting 3 02-16-2008 06:11
String Vervanging laxmi UNIX for Advanced & Expert Gebruikers 1 02-16-2008 06:08
Sed String Vervanging pciatto UNIX voor Dummies Questions & Answers 2 04-29-2002 11:10

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Zoeken in deze Thread Rate Thread Display Modes
  #1 (permalink)  
Old 02-10-2009
melanie_pfefer melanie_pfefer is offline
Geregistreerde gebruiker
  
 

Join Date: november 2006
Posts: 234
string vervanging in perl

Hoi,

Ik heb een template bestand en wil 3 parameters te vervangen door de waarden die ik wil. deze waarden zijn in een parameter bestand.

Enig idee hoe dit te doen in perl?

de parameter bestand ziet er als volgt uit:

host_name \u003d jupiter
PORT \u003d 1562
IPADDRESS \u003d 10.1.34.10


het template bestand heeft veel van binnenkomst.


CX_HOST_NAME \u003d host_name
CX_IPADDRESS \u003d ip_address
CX__PORT \u003d poort

bedankt.
  #2 (permalink)  
Old 02-10-2009
quirkasaurus's Avatar
quirkasaurus quirkasaurus is offline
Geregistreerde gebruiker
  
 

Join Date: Jan 2009
Locatie: Canton, Michigan
Posts: 388
Ik ben geen perl monnik. . . maar dit werkt:


Code:
#!/usr/bin/perl

#----------------------------------------------------------------------#
# Read both files into arrays...                                       #
#----------------------------------------------------------------------#
$param_file = "parameters.dat";

unless ( open FIN, "$param_file" ){
  print "cannot open $param_file \n";
  exit(1);
  }

@a_parameters = <FIN>; chomp @a_parameters; close FIN;

$template_file = "template.dat";

unless ( open FIN, "$template_file" ){
  print "cannot open $template_file \n";
  exit(1);
  }

@a_template = <FIN>; chomp @a_template; close FIN;

#----------------------------------------------------------------------#
# Peruse one array...                                                  #
#----------------------------------------------------------------------#
for $x ( 0 .. scalar( @a_parameters ) - 1 ){
  ( $var_name, $equals, $var_value ) = split( / /, $a_parameters[$x] );
  $var_name = uc( $var_name );
#----------------------------------------------------------------------#
# Looking for values in the other...                                   #
#----------------------------------------------------------------------#
  for $y ( 0 .. scalar( @a_template ) - 1 ){
    next unless ( $template[$y] = m/CX_*$var_name = / );
#----------------------------------------------------------------------#
# Substitute the template with the parameter...                        #
#----------------------------------------------------------------------#
    $a_template[$y] =~ s/= .*$/= $var_value/;
    }
  }

#----------------------------------------------------------------------#
# ... and print.                                                       #
#----------------------------------------------------------------------#
for $y ( 0 .. scalar( @a_template ) - 1 ){
  print "template entry " . ( $y + 1 ) . ": $a_template[$y] \n";
  }


Laatst bewerkt door quirkasaurus; op 02.10.2009 02:35 PM.. Reden: clean up ...
Closed Thread

Bladwijzers

Thread Tools Zoeken in deze Thread
Zoeken in deze Thread:

Uitgebreid zoeken
Display Modes Beoordeel deze draad
Beoordeel deze draad:

Posting Regels
Jij mag niet Post Nieuwe threads
Jij mag niet na antwoorden
Jij mag niet post attachments
Jij mag niet bewerk uw berichten

BB code is Aan
Smilies zijn Aan
[IMG] code Aan
HTML-code is Uit
Trackbacks zijn Aan
Pingbacks zijn Aan
Refbacks zijn Aan




Alle tijden zijn GMT -4. Het is nu 12:37.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Vertalingen Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
De Unix-en Linux Forums Copyright © 1993-2009. Alle rechten Reserved.Ad Beheer door RedTyger

Content Relevante URL's door vBSEO 3.2.0