Hey Everyone,
Does anyone know how - or if it's even possible - for a child perl script to inherit the variables of a parent perl script? In a shell script, you would use "export" for example. I am running Perl 5.8.
Basically, let's say "perl1.pl" calls "perl2.pl" and I want "perl2.pl" to... (2 Replies)
I'm trying to make changes in a file using the following bash script:
#!/bin/bash
MYHOME=`echo $HOME`
README=$MYHOME"/environment"
IAM=`whoami`
CHANGEPATHLIST="TALOG TACONFIG TAINFO TAWORK TMPSPACE"
for var in $CHANGEPATHLIST
do
perl -pi -e 's/sacuser1/$IAM/ if m/$var/' $README... (3 Replies)
Hi All,
I am trying to convert the below Csh while loop into Perl while loop but the problem is that in this csh script, i have 2 variables inside a variable -> $count is a variable {SB$count} as a whole is another variable. Csh is able to assign values to such variable like the below but i do... (3 Replies)
Hey all,
perl - how can we name a variable base on the value of another variable?
for example in ksh/bash we do :
export c="100"
export x`echo $c`=2000
echo $x100
x100=2000
is it possible to do something similar for perl?
I already tried many ways but nothing is working.
I am... (3 Replies)
Hi,
I want to count the number of occurences of a character in a string variable ($str). The character is stored in a another variable ($sepchr). I am using tr as :
$count = ($str =~ tr/$sepchr//);
This did not work. I found in another thread about using eval. I used eval as :
... (13 Replies)
Hi,
I have the following lines that I would like to see in an array for easy comparisons and printing:
Example 1:
field1,field2,field3,field4,field5
value1,value2,value3,value4,value5Example 2:
field1,field3,field4,field2,field5,field6,field7... (7 Replies)
Hi, guys, i have a script i inherited from a coworker but i'm not perl savy. The script works but i would like it to work better. I want to run this command
./ciscomgrtest.pl -r "show version" -h hosts.router
and have the script goto each router in the hosts.router file and run the command... (2 Replies)
In PERL , $0 variable displays program name ( if we use inside script) .likewise is there a way to display program name and it's arguments passed to script .
e.g.
test.pl -a1 -b3 -c4
inside test.pl , if I use $0 , it gives me test.pl ..but I am looking for command to get complete program... (1 Reply)
Discussion started by: talashil
1 Replies
LEARN ABOUT REDHAT
xml::grove::subst
XML::Grove::Subst(3) User Contributed Perl Documentation XML::Grove::Subst(3)NAME
XML::Grove::Subst - substitute values into a template
SYNOPSIS
use XML::Grove::Subst;
# Using subst method on XML::Grove::Document or XML::Grove::Element:
$new_grove = $source_grove->subst( ARGS );
$new_grove = $source_grove->subst_hash( ARG );
# Using an XML::Grove::Subst instance:
$subster = XML::Grove::Subst->new();
$new_grove = $subster->subst( $source_grove, ARGS );
$new_grove = $subster->subst_hash( $source_grove, ARG );
DESCRIPTION
"XML::Grove::Subst" implements XML templates. "XML::Grove::Subst" traverses through a source grove replacing all elements with names
`"SUB:XXX"' or `"SUB:key"' with their corresponding values from ARGS (a list) or ARG (a hash), repsectively.
METHODS
$grove_obj->subst( ARGS ) =item $subster->subst( $grove_obj, ARGS )
Search for `"SUB:XXX"' elements, where XXX is an array index, and replace the element with the value from ARGS, a list of values. The
return value is a new grove with the substitutions applied.
$grove_obj->subst_hash( ARG ) =item $subster->subst_hash( $grove_obj, ARG )
Search for `"SUB:key"' elements and replace the element with the value from ARG, a hash of values. The hash key is taken from the
`"key"' attribute of the `"SUB:key"' element, for example, `"<SUB:key key='foo'>"'. The return value is a new grove with the substitu-
tions applied.
EXAMPLE
The following template, in a file `"template.xml"', could be used for a simple parts database conversion to HTML:
<html>
<head>
<title><SUB:key key='Name'></title>
</head>
<body>
<h1><SUB:key key='Name'></title>
<p>Information for part number <SUB:key key='Number'>:</p>
<SUB:key key='Description'>
</body>
</html>
To use this template you would first parse it and convert it to a grove, and then use `"subst_hash()"' every time you needed a new page:
use XML::Parser::PerlSAX;
use XML::Grove;
use XML::Grove::Builder;
use XML::Grove::Subst;
use XML::Grove::PerlSAX;
use XML::Handler::XMLWriter;
# Load the template
$b = XML::Grove::Builder->new();
$p = XML::Parser::PerlSAX->new( Handler = $b );
$source_grove = $p->parse( Source => { SystemId => 'template.xml' } );
# Apply the substitutions
$new_grove = $source_grove->subst_hash( { Name => 'Acme DCX-2000 Filter',
Number => 'N4728',
Description => 'The Best' } );
# Write the new grove to standard output
$w = XML::Handler::XMLWriter->new();
$wp = XML::Grove::PerlSAX->new( Handler => $w );
$wp->parse( Source => { Grove => $new_grove } );
AUTHOR
Ken MacLeod, ken@bitsko.slc.ut.us
SEE ALSO perl(1), XML::Grove(3)
Extensible Markup Language (XML) <http://www.w3c.org/XML>
perl v5.8.0 1999-08-25 XML::Grove::Subst(3)