Sponsored Content
Top Forums Shell Programming and Scripting How to retrieve value from xml tags Post 302446349 by davidsouk on Wednesday 18th of August 2010 05:06:07 PM
Old 08-18-2010
rdcwayx, thanks this might work for me: can you explain the code?

awk '{gsub(/></,">\n<")}1' response.xml|awk -F ">|<" '/requestID/||/SitePartyId/||/ResultCode/ {printf $3","}'

---------- Post updated at 04:56 PM ---------- Previous update was at 10:20 AM ----------

Quote:
Originally Posted by pravin27
try this,

Code:
perl -lne 'if ( /\<requestID\>(\d+)\<\/requestID\>(.+?)\<ResultCode\>(\w+)\<\/ResultCode\>(.+?)>\<SitePartyId\>(.+?)\<\/SitePartyId\>/ ) { print $1,",",$3,",",$5;}' response.xml

=====================================
I am beginning to understand,can you explain your code? I tried this on my system and it works. I even tried a few more attributes, which works but got really confused as to what all the syntax and commands are doing. Your explanation is greatly appreciated.

ie.

what is (.+?) and (\w+) mean?

ultimately, i'd like to put this in a script instead of running this on the command line. i could potentially expand this to 12 attributes which would be cumbersome on the command line. is there a way to put this in a shell script?

---------- Post updated at 05:06 PM ---------- Previous update was at 04:56 PM ----------

Quote:
Originally Posted by rdcwayx
Not really correct, but just for your reference.
Code:
awk '{gsub(/></,">\n<")}1' response.xml|awk -F ">|<" '/requestID/||/SitePartyId/||/ResultCode/ {printf $3","}'

SUCCESS,1018757,SUCCESS,S0030Y3ZL6,

=============

I need to redirect the results to a new file with a new line for every input line that got processed. I tried the code, which is bringing back the correct values - but in the output, it is all in 1 single line. how do I insert a new line into the output for each record that got processed? ie.

output should like like this:

SUCCESS,1018757,SUCCESS,S0030Y3ZL6
SUCCESS,1018758,SUCCESS,S0030Y3ZL6
SUCCESS,1018759,SUCCESS,S0030Y3ZL6
SUCCESS,1018760,SUCCESS,S0030Y3ZL6

Also, I need to get rid of the first 'SUCCESS' so the actually output should look like this:

1018757,SUCCESS,S0030Y3ZL6
1018758,SUCCESS,S0030Y3ZL6
1018759,SUCCESS,S0030Y3ZL6
1018760,SUCCESS,S0030Y3ZL6
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

awk to retrieve the particular value from a same list of xml tags

Hi All, I have the following code in one of my xml file: <com:parameter> <com:name>secretKey</com:name> <com:value>31XA874821172E89B00B1C</com:value> </com:parameter> <com:parameter> <com:name>tryDisinfect</com:name> <com:value>false</com:value> </com:parameter> <com:parameter>... (4 Replies)
Discussion started by: mjavalkar
4 Replies

2. Shell Programming and Scripting

how to retrieve specific parameters using a xml tag

Hi, I have the following code in my xml file: <aaaRule loginIdPattern=".*" orgIdPattern=".*" deny="false" /> <aaaRuleGroup name="dpaas"> <aaaRule loginIdPattern=".*" orgIdPattern=".*" deny="false" /> I want to retrieve orgIdPattern and loginIdPattern parameter value based on... (2 Replies)
Discussion started by: mjavalkar
2 Replies

3. Shell Programming and Scripting

How to retrieve the value from XML tag whose end tag is in next line

Hi All, Find the following code: <Universal>D38x82j1JJ </Universal> I want to retrieve the value of <Universal> tag as below: Please help me. (3 Replies)
Discussion started by: mjavalkar
3 Replies

4. Shell Programming and Scripting

How to add the multiple lines of xml tags before a particular xml tag in a file

Hi All, I'm stuck with adding multiple lines(irrespective of line number) to a file before a particular xml tag. Please help me. <A>testing_Location</A> <value>LA</value> <zone>US</zone> <B>Region</B> <value>Russia</value> <zone>Washington</zone> <C>Country</C>... (0 Replies)
Discussion started by: mjavalkar
0 Replies

5. Shell Programming and Scripting

Shell Command to compare two xml lines while ignoring xml tags

I've got two different files and want to compare them. File 1 : HTML Code: <response ticketId="944" type="getQueryResults"><status>COMPLETE</status><description>Query results fetched successfully</description><recordSet totalCount="1" type="sms_records"><record... (1 Reply)
Discussion started by: Shaishav Shah
1 Replies

6. Shell Programming and Scripting

Compare two xml files while ignoring some xml tags

I've got two different files and want to compare them. File 1 : <response ticketId="944" type="getQueryResults"><status>COMPLETE</status><description>Query results fetched successfully</description><recordSet totalCount="1" type="sms_records"><record id="38,557"><columns><column><name>orge... (2 Replies)
Discussion started by: Shaishav Shah
2 Replies

7. Shell Programming and Scripting

How to add Xml tags to an existing xml using shell or awk?

Hi , I have a below xml: <ns:Body> <ns:result> <Date Month="June" Day="Monday:/> </ns:result> </ns:Body> i have a lookup abc.txtt text file with below details Month June July August Day Monday Tuesday Wednesday I need a output xml with below tags <ns:Body> <ns:result>... (2 Replies)
Discussion started by: Nevergivup
2 Replies

8. Red Hat

Error: Cannot retrieve repository metadata (repomd.xml) for repository: InstallMedia.

Most of my commands are returning this error on RHEL 6 64 bit: Also I tried installing many sofwtares, but it fails to correctly work. For example I treid installing dos2unix: # rpm -ivh dos2unix-5.3.3-5.ram0.98.src.rpm 1:dos2unix warning: user mockbuild does not... (0 Replies)
Discussion started by: India_2014
0 Replies

9. Shell Programming and Scripting

How to retrieve values from XML file and update them in the same position! PLEASE HELP?

Good Day All Im quiet new to ksh scripting and need a bit of your help. I am attempting to write a script that reads in an XML and extracts certain field values from an XML file. The values are all alphanumeric and consist of two components: e.g "Test 1". I need to to create a script that... (2 Replies)
Discussion started by: JulioAmerica
2 Replies

10. UNIX for Beginners Questions & Answers

How to pull multiple XML tags from the same XML file in Shell.?

I'm searching for the names of a TV show in the XML file I've attached at the end of this post. What I'm trying to do now is pull out/list the data from each of the <SeriesName> tags throughout the document. Currently, I'm only able to get data the first instance of that XML field using the... (9 Replies)
Discussion started by: hungryd
9 Replies
TIDY.GETCONFIG(3)							 1							 TIDY.GETCONFIG(3)

tidy::getConfig - Get current Tidy configuration

       Object oriented style

SYNOPSIS
array tidy::getConfig (void ) DESCRIPTION
Procedural style array tidy_get_config (tidy $object) Gets the list of the configuration options in use by the given tidy $object. PARAMETERS
o $object - The Tidy object. RETURN VALUES
Returns an array of configuration options. For an explanation about each option, visit http://tidy.sourceforge.net/docs/quickref.html. EXAMPLES
Example #1 tidy.getConfig(3) example <?php $html = '<p>test</p>'; $config = array('indent' => TRUE, 'output-xhtml' => TRUE, 'wrap' => 200); $tidy = tidy_parse_string($html, $config); print_r($tidy->getConfig()); ?> The above example will output: Array ( [indent-spaces] => 2 [wrap] => 200 [tab-size] => 8 [char-encoding] => 1 [input-encoding] => 3 [output-encoding] => 1 [newline] => 1 [doctype-mode] => 1 [doctype] => [repeated-attributes] => 1 [alt-text] => [slide-style] => [error-file] => [output-file] => [write-back] => [markup] => 1 [show-warnings] => 1 [quiet] => [indent] => 1 [hide-endtags] => [input-xml] => [output-xml] => 1 [output-xhtml] => 1 [output-html] => [add-xml-decl] => [uppercase-tags] => [uppercase-attributes] => [bare] => [clean] => [logical-emphasis] => [drop-proprietary-attributes] => [drop-font-tags] => [drop-empty-paras] => 1 [fix-bad-comments] => 1 [break-before-br] => [split] => [numeric-entities] => [quote-marks] => [quote-nbsp] => 1 [quote-ampersand] => 1 [wrap-attributes] => [wrap-script-literals] => [wrap-sections] => 1 [wrap-asp] => 1 [wrap-jste] => 1 [wrap-php] => 1 [fix-backslash] => 1 [indent-attributes] => [assume-xml-procins] => [add-xml-space] => [enclose-text] => [enclose-block-text] => [keep-time] => [word-2000] => [tidy-mark] => [gnu-emacs] => [gnu-emacs-file] => [literal-attributes] => [show-body-only] => [fix-uri] => 1 [lower-literals] => 1 [hide-comments] => [indent-cdata] => [force-output] => 1 [show-errors] => 6 [ascii-chars] => 1 [join-classes] => [join-styles] => 1 [escape-cdata] => [language] => [ncr] => 1 [output-bom] => 2 [replace-color] => [css-prefix] => [new-inline-tags] => [new-blocklevel-tags] => [new-empty-tags] => [new-pre-tags] => [accessibility-check] => 0 [vertical-space] => [punctuation-wrap] => [merge-divs] => 1 ) SEE ALSO
tidy_reset_config(3), tidy_save_config(3). PHP Documentation Group TIDY.GETCONFIG(3)
All times are GMT -4. The time now is 04:47 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy