The UNIX and Linux Forums  
Hej og Velkommen fra USA til UNIX og Linux Forums! Tak for dit besøg og deltager i vores globale samfund.

Go Back   UNIX og Linux Forums > Top Forums > Shell Programmering og Scripting
.
google unix.com



Shell Programmering og Scripting Post spørgsmål om ksh, CSH, SH, Bash, Perl, PHP, SED, AWK og ANDRE shell scripts og Shell scriptsprog her.

Mere UNIX og Linux Forum Emner du måske kan finde Helpful
Tråd Thread Starter Forum Svar Last Post
Perl: string substitution Mønster: \u003d 'abc ...', Niroj Shell Programmering og Scripting 14 01-22-2009 04:58 PM
String substitution Ctrl-Alt-Del Shell Programmering og Scripting 3 10-14-2008 02:37 AM
string substitution laxmi Shell Programmering og Scripting 3 02-16-2008 06:11 AM
String Substitution laxmi UNIX for Advanced & Ekspertsøgning Brugere 1 02-16-2008 06:08 AM
Sed String Substitution pciatto UNIX for dummyer Spørgsmål & svar 2 04-29-2002 10:10 AM

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 Søg denne tråd Rate Thread Display Modes
  #1 (permalink)  
Old 02-10-2009
melanie_pfefer melanie_pfefer is offline
Registreret Bruger
  
 

Join Date: Nov 2006
Posts: 234
string udskiftning i perl

Hej,

Jeg har en skabelon fil og ønsker at erstatte 3 parametre til de værdier, som jeg ønsker. disse værdier er i en parameter-fil.

Nogen idé om, hvordan du gør dette i perl?

parameteren filen ser således ud:

host_name \u003d Jupiter
PORT \u003d 1562
IPADDRESS \u003d 10.1.34.10


skabelonfilen har masser af indrejse.


CX_HOST_NAME \u003d host_name
CX_IPADDRESS \u003d ip_address
CX__PORT \u003d port

tak.
  #2 (permalink)  
Old 02-10-2009
quirkasaurus's Avatar
quirkasaurus quirkasaurus is offline
Registreret Bruger
  
 

Join Date: Jan 2009
Beliggenhed: Canton, Michigan
Posts: 373
Jeg er ikke en perl munk. . . men det virker:

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";
  }

Senest redigeret af quirkasaurus; 02-10-2009 kl 02:35 PM.. Årsag: rydde op ...
Closed Thread

Bogmærker

Thread Tools Søg denne tråd
Søg denne tråd:

Avanceret søgning
Display Modes Bedøm denne tråd
Bedøm denne tråd:

Udstationering Regler
Du kan ikke post nye tråde
Du kan ikke post svar
Du kan ikke post vedhæftede filer
Du kan ikke redigere dine indlæg

BB-kode er
Smilies er
[IMG] koden er
HTML-koden er Slukket
Trackbacks er
Pingbacks er
Refbacks er




Alle tidspunkter er GMT -4. Den tid er nu 09:41 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Oversættelser Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. Alle rettigheder Reserved.Ad Management ved RedTyger

Content Relevant webadresser ved vBSEO 3.2.0