Sponsored Content
Top Forums Shell Programming and Scripting How can I extract XML block around matching search string? Post 302966589 by kchinnam on Saturday 13th of February 2016 10:41:09 PM
Old 02-13-2016
Don, I want to keep \t tab characters.
I want my output to have initial generic XML block + search node + last closing element.

Code:
<?xml version="1.0" encoding="UTF-8"?>
<deployment-request>
  <requestor>
    <first-name>kchinnam</first-name>
    <last-name>Group</last-name>
    <email-address>kchinnam@some.com</email-address>
  </requestor>
  <notify-list>
    <email-address>kchinnam@some.com</email-address>
  </notify-list>
  <application>
    <application-name>myapp1-ear</application-name>
    <ear-file-name>myapp1-ear.ear</ear-file-name>
    <edition/>
    <shared-library-name/>
  </application>
</deployment-request>

Code:
so I started doing something like this, but it is not working.
# This is to get initial generic XML block of text.
ed -s xmlfile.xml <<EOF
g/<notify-list>/?<deployment-request>?,<\/deployment-request>/p
q
EOF

# once above one works, I would like to append that with matched block of XML.
ed -s xmlfile.xml <<EOF
g/<notify-list>/?<deployment-request>?,<\/deployment-request>/p
g/<application-name>$strear<\/application-name>/?<application>?,/<\/application>/p
q
EOF


Last edited by kchinnam; 02-13-2016 at 11:45 PM.. Reason: xml formatting
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Search for string in a file and extract another string to a variable

Hi, guys. I have one question: I need to search for a string in a file, and then extract another string from the file and assign it to a variable. For example: the contents of the file (group) is below: ... ftp:x:23: mail:x:34 ... testing:x:2001 sales:x:2002 development:x:2003 ...... (6 Replies)
Discussion started by: daikeyang
6 Replies

2. Shell Programming and Scripting

Extract selective block from XML file

Hi, There's an xml file produced from a front-end tool as shown below: <INPUT DATABASE ="ORACLE" DBNAME ="UNIX" NAME ="FACT_TABLE" OWNERNAME ="DIPS"> <INPUTFIELD DATATYPE ="double" DEFAULTVALUE ="" DESCRIPTION ="" NAME ="STORE_KEY" PICTURETEXT ="" PORTTYPE ="INPUT" PRECISION ="15" SCALE... (6 Replies)
Discussion started by: dips_ag
6 Replies

3. UNIX for Dummies Questions & Answers

Search and extract matching patterns

%%%%% (9 Replies)
Discussion started by: lucasvs
9 Replies

4. Shell Programming and Scripting

XML - Split And Extract String between Chars

Hi, I am trying to read the records from file and split into multiple files. SourceFile.txt <?xml version="1.0" encoding="UTF-8"?>... (2 Replies)
Discussion started by: unme
2 Replies

5. Shell Programming and Scripting

Extract string from XML

Hi, I wish to grep for the first instance of <listen-address> value between the first <server></server> tag in an xml file. Sample xml: ......... <timeout-seconds>1500</timeout-seconds> </jta> <server> <name>Adminserver_DEV</name> ... (9 Replies)
Discussion started by: mohtashims
9 Replies

6. Shell Programming and Scripting

To extract a string between two words in XML file

i need to extract the string between two tags, input file is <PersonInfoShipTo AddressID="446311709" AddressLine1="" AddressLine2="" AddressLine3="" AddressLine4="" AddressLine5="" AddressLine6="" AlternateEmailID="" Beeper="" City="" Company="" Country="" DayFaxNo="" DayPhone="" Department=""... (5 Replies)
Discussion started by: Padmanabhan
5 Replies

7. Shell Programming and Scripting

Extract First and matching word from string in UNIX

Thank you (2 Replies)
Discussion started by: Pratik Majithia
2 Replies

8. Shell Programming and Scripting

Search String and extract few lines under the searched string

Need Assistance in shell programming... I have a huge file which has multiple stations and i wanted to search particular station and extract few lines from it and the rest is not needed Bold letters are the stations . The whole file has multiple stations . Below example i wanted to search... (4 Replies)
Discussion started by: ajayram_arya
4 Replies

9. Shell Programming and Scripting

Extract all text between the same matching string from a given column

Hello All, I have an input sample data like below (In actual I have many columns and few million rows). Column1,Column2 4,2 1,5 Hello,4 1,4 Hello,2 3,5 Hello,8 4,5 Need the output (using awk and/or sed preferably) like below. Here I need all the lines between 2 matching... (1 Reply)
Discussion started by: ks_reddy
1 Replies

10. UNIX for Beginners Questions & Answers

Extract XML block when value is matched (Shell script)

Hi everyone, So i'm struggling with an xml (log file) where we get information about some devices, so the logfile is filled with multiple "blocks" like that. Based on the <devId> i want to extract this part of the xml file. If possible I want it to have an script for this, cause we'll use... (5 Replies)
Discussion started by: Pouky
5 Replies
RDF::Trine::Node::Literal::XML(3pm)			User Contributed Perl Documentation		       RDF::Trine::Node::Literal::XML(3pm)

NAME
RDF::Trine::Node::Literal::XML - RDF Node class for XMLLiterals METHODS
"new ( $node )" "new ( $string [ , $lang, $datatype ] )" Returns a new XML Literal object. This method can be used in two different ways: It can either be passed a string or an XML::LibXML node. In the case of passing a string, this method follows the same API as the RDF::Trine::Node::Literal constructor, but: o $string must be a well-balanced XML fragment =item * $lang is optional, but if a language code is present it will be used as the value of "xml:lang" attribute(s) on the root XML element(s) of the literal. If the element already has an "xml:lang" attribute it will be overwritten. For the node types that doesn't support adding a language, text and CData, a warning will be issued. =item * $datatype will be ignored and set to 'http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral' In the case of using a XML::LibXML node $node, the Node may be one of these types or a subclass thereof: o XML::LibXML::Document =item * XML::LibXML::DocumentFragment =item * XML::LibXML::Element =item * XML::LibXML::CDATASection =item * XML::LibXML::NodeList =item * XML::LibXML::Text If the string is not a valid XML fragment, and the $node is not of one of the above types, this method throws a RDF::Trine::Error exception. "xml_element" Returns the XML::LibXML node for the XML Literal. AUTHOR
First created by Gregory Todd Williams <gwilliams@cpan.org>, modfied and maintained by Kjetil Kjernsmo <kjetilk@cpan.org> perl v5.10.1 2011-03-04 RDF::Trine::Node::Literal::XML(3pm)
All times are GMT -4. The time now is 10:40 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy