Replacing multiple lines in file from another file
Hi All,
I'm trying to parse a XML file and replace few lines of file with text present in another file. But only issue is I need to replace only those lines from XML which are preceeding the JOBNAME =*RRN*
For ex test.xml(content of XML file in which I want to replace lines is )
Now I want to replace only lines starting from <ON CODE="*" STMT="*" >
to </JOB> only where I could find
JOBNAME="JD901_001__RRN_APPLICATION__PRD1Q".
Replace.txt ( File containing the text I want to replace it with)
I used grep to serach all the occurances of RRN jobs
l and using line numbers I tried to search in XML to replace the lines, but its not working.
Can somebody please help me with this.
Thanks
Last edited by Franklin52; 06-04-2011 at 09:14 AM..
Reason: Please use code tags
hey guys, how do i replace only a line within a file without messing up the rest of the contents of the file?
see, if possible can you guys give me a straight forward way to do this. i dont want a complex command. what i mean is i know i can accomplish this by using sed, well, i think i can,... (3 Replies)
Hi there
I have a file which has the lines
# Serial number for hostid
EXP_SERIAL_=""
These lines could be anywhere in the file as far as line numbers go, I would like replace these two lines with
# Serial number for hostid $var1
EXP_SERIAL_$var1="$var2"
Is there a quick and simple... (6 Replies)
Hi All,
I have a query on Perl. I have a text file which has 3 lines, i want to only replace the first line with my replaced text and keep the rest of the text. FOr eg
Before change -->
echo:a:pending
echo:b:pending
echo:c:pending
After change --->
echo:a:done
echo:b:pending... (1 Reply)
Dear All,
Regards of the Day.
I have a text file with some functions:
Function1
{
parameter 1
parameter 2
parameter 3
}
end
Function2
{
parameter 1
parameter 2
parameter 3
} (1 Reply)
Hi
Am confused with the usage of "sed" command
I want to replace a single line with multiple lines of a file..
eg.,
A file has
Hi, How are you?
I need to replace as
Am fine
What are You doing?
I used the script as
string1="Hi, How are you?"
echo "$string1 is the value"... (4 Replies)
Greetings all
I have a delimited text file (the delimiter is ';') where certain fields consist of many blanks e.g. ; ; and ; ;
Before I separate the data I need to eliminate these blanks altogether.
I tried the sed command using the following syntax:
sed -i 's/; *;/;;/g' <filename>
... (15 Replies)
Here is the task that I was presented with:
I am dealing with about a 10,000 line input deck file for an analysis. About 10 separate blocks of around 25 lines of code each need to be updated in the input deck.
The input deck (deckToChange in the code below) comes with 2 separate files. File 1... (5 Replies)
GM,
I have an issue at work, which requires a simple solution. But, after multiple attempts, I have not been able to hit on the code needed.
I am assuming that sed, awk or even perl could do what I need.
I have an application that adds extra blank page feeds, for multiple reports, when... (7 Replies)
Please help me in this scenario
i have two text files as below
file1.txt
record_1
conversion of a file;
code change;
data types;
lenght;
end;
record_2
field name;
string;
new fileline;
end;
record_3 (7 Replies)
Discussion started by: velraj9
7 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)