Sponsored Content
Top Forums Shell Programming and Scripting Bash XML Parsing using Perl XPath Post 302485941 by jfmorales on Thursday 6th of January 2011 02:07:29 PM
Old 01-06-2011
Bug Solved

Thanks, fpmurphy! Your example worked perfectly, with only a slight adjustment for the differing syntax of xpath on my system:

xpath -e "count(//bread)" input.xml 2>/dev/null

The 2>/dev/null that you included at the end is particularly nice as it suppresses some unnecessary text from the reply.

Joseph
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Conversion of bash parsing script to perl?

I need help with a perl parsing script. I have some error logs on a windows machine that I need to parse from a text file, but I know nothing about perl. I usually run this bash script on my linux box and it does just what I need. How would I do the same thing with perl and port it to my windows... (2 Replies)
Discussion started by: cstovall
2 Replies

2. UNIX for Advanced & Expert Users

xml parsing error in perl

******************PERL VERSION************************ This is perl, v5.8.1 built for i386-linux-thread-multi ERROR!!!!---Undefined subroutine &main::start called at /usr/lib/perl5/vendor_perl/5.8.0/i386-linux-thread-multi/XML/Parser/Expat.pm line 469. *********************PERL... (1 Reply)
Discussion started by: bishweshwar
1 Replies

3. Shell Programming and Scripting

Perl parsing compared to Ksh parsing

#! /usr/local/bin/perl -w $ip = "$ARGV"; $rw = "$ARGV"; $snmpg = "/usr/local/bin/snmpbulkget -v2c -Cn1 -Cn2 -Os -c $rw"; $snmpw = "/usr/local/bin/snmpwalk -Os -c $rw"; $syst=`$snmpg $ip system sysName sysObjectID`; sysDescr.0 = STRING: Cisco Internetwork Operating System Software... (1 Reply)
Discussion started by: popeye
1 Replies

4. Shell Programming and Scripting

Random XML Parsing - using Perl

Given the XML: <?xml version="1.0" encoding="UTF-8"?> <reference> <refbody> <section> <p> <ul> <li><xref href="file1.dita#anchor" /></li> <li><xref href="file2.dita#anchor" /></li> </ul> </p> </section> <section> <p> <xref href="file3.dita#anchor" /> </p> <p> <xref... (4 Replies)
Discussion started by: ricksj
4 Replies

5. Shell Programming and Scripting

parsing XML result by using perl?

for some reasons, i need to parse the XML result by using perl. for instance, this is a sample XML result: <Response> <status>success</status> <answer>AAA::AAA</answer> <answer>BBB::BBB</answer> </Response> then i can use this way : my @output = (); foreach my $parts (@all) ##@all... (2 Replies)
Discussion started by: tiger2000
2 Replies

6. Shell Programming and Scripting

Extract TAG name and XPATH from XML file via shellscript

Hi, Here is a sample xml file and expected output. I need to extract the element/tag name (not value) and xpath (sample output.txt). But the main problem is I put here one simple xml file where I can clearly see the number of elements, but in real time I have a xml file which have over 500... (18 Replies)
Discussion started by: BithunC
18 Replies

7. Shell Programming and Scripting

Help in parsing XML output file in perl.

Hi I have an XML output like : <?xml version="1.0" encoding="ISO-8859-1" ?> - <envelope> - <body> - <outputGetUsageSummary> - <usgSumm rerateDone="5"> - <usageAccum accumId="269" accumCaptn="VD_DP_AR" inclUnits="9999999.00" inclUnitsUsed="0.00" shared="false" pooled="false"... (7 Replies)
Discussion started by: rkrish
7 Replies

8. Shell Programming and Scripting

XML: parsing of the Google contacts XML file

I am trying to parse the XML Google contact file using tools like xmllint and I even dived into the XSL Style Sheets using xsltproc but I get nowhere. I can not supply any sample file as it contains private data but you can download your own contacts using this script: #!/bin/sh # imports... (9 Replies)
Discussion started by: ripat
9 Replies

9. Shell Programming and Scripting

XML parsing

i have xml output in below format... <AlertsResponse> <Alert id="11216" name="fgdfg"> <AlertActionLog timestamp="1356521629778" user="admin" detail="Recovery Alert"/> </Alert> <Alert id="11215" name="gdfg <AlertActionLog timestamp="1356430119840" user=""... (12 Replies)
Discussion started by: vivek d r
12 Replies

10. Shell Programming and Scripting

Parsing XML (and insert data) then output data (bash / Solaris)

Hi folks I have a script I wrote that basically parses a bunch of config and xml files works out were to add in the new content then spits out the data into a new file. It all works - apart from the xml and config file format in the new file with XML files the original XML (that ends up in... (2 Replies)
Discussion started by: dfinch
2 Replies
Template::Plugin::XML(3pm)				User Contributed Perl Documentation				Template::Plugin::XML(3pm)

NAME
Template::Plugin::XML - XML plugin for the Template Toolkit SYNOPSIS
[% USE XML; dom = XML.dom('foo.xml'); xpath = XML.xpath('bar.xml'); simple = XML.simple('baz.xml'); rss = XML.simple('news.rdf'); %] [% USE XML(file='foo.xml'); dom = XML.dom xpath = XML.xpath # ...etc... %] [% USE XML(dir='/path/to/xml'); file = XML.file('foo.xml' ); dom = file.dom xpath = file.xpath # ...etc... %] DESCRIPTION
The Template-XML distribution provides a number of Template Toolkit plugin modules for working with XML. The Template::Plugin::XML module is a front-end to the various other XML plugin modules. Through this you can access XML files and direc- tories of XML files via the Template::Plugin::XML::File and Template::Plugin::XML::Directory modules (which subclass from the Tem- plate::Plugin::File and Template::Plugin::Directory modules respectively). You can then create a Document Object Model (DOM) from an XML file (Template::Plugin::XML::DOM), examine it using XPath queries (Template::Plugin::XML::XPath), turn it into a Perl data structure (Tem- plate::Plugin::XML::Simple) or parse it as an RSS (RDF Site Summary) file. The basic XML plugins were distributed as part of the Template Toolkit until version 2.15 released in May 2006. At this time they were extracted into this separate Template-XML distribution and an alpha version of this Template::Plugin::XML front-end module was added. The Template::Plugin::XML module is still in development and not guaranteed to work correctly yet. However, all the other XML plugins are more-or-less exactly as they were in TT version 2.14 and should work as normal. For general information on the Template Toolkit see the documentation for the Template module or <http://template-toolkit.org>. For infor- mation on using plugins, see Template::Plugins and "USE" in Template::Manual::Directives. For further information on XML, see <http://xml.com/>. METHODS
The XML plugin module provides a number of methods to create various other XML plugin objects. file(name) Creates a Template::Plugin::XML::File object. This is a subclass of Template::Plugin::File. dir(path) Creates a Template::Plugin::XML::Directory object. This is a subclass of Template::Plugin::Directory. dom() Generate a Document Object Module from an XML file. This can be called against a directory, file or an XML plugin object, as long as the source XML filename is defined somewhere along the line. [% dom = XML.dom(filename) %] [% file = XML.file(filename); dom = file.dom %] [% dir = XML.dir(dirname); dom = dir.dom(filename) %] xpath() Perform XPath queries on the file. Like the dom() method, xpath() can be called against a file, directory or an XML plugin object. [% xpath = XML.xpath(filename) %] [% file = XML.file(filename); xpath = file.xpath %] [% dir = XML.dir(dirname); xpath = dir.xpath(filename) %] simple() TODO: As per dom() and xpath() but for XML::Simple rss() TODO: As per dom(), xpath() and simple() but for XML::RSS XML PLUGINS
These are the XML plugins provided in this distribution. Template::Plugin::XML Front-end module to the XML plugin collection. Template::Plugin::XML::File This plugin module is used to represent individual XML files. It is a subclass of the Template::Plugin::File module, providing the addi- tional dom(), xpath(), simple() and other methods relevant to XML files. Template::Plugin::XML::Directory This plugin module is used to represent directories of XML files. It is a subclass of the Template::Plugin::Directory module and provides the same additional XML related methods as Template::Plugin::XML::File. Template::Plugin::XML::DOM Plugin interface providing access to the XML::DOM module. [% USE XD = XML.Dom %] [% dom = XD.parse_file('example.xml') %] [% pages = dom.getElementsByTagName('page') %] Template::Plugin::XML::RSS Plugin interface providing access to the XML::RSS module. [% USE news = XML.RSS('news.rdf') -%] [% FOREACH item IN news.items -%] * [% item.title %] [% END %] Template::Plugin::XML::Simple Plugin interface providing access to the XML::Simple module. [% USE xml = XML.Simple('example.xml') %] Template::Plugin::XML::XPath Plugin interface providing access to the XML::XPath module. [% USE xpath = XML.XPath('example.xml'); bar = xpath.find('/foo/bar'); %] AUTHORS
Andy Wardley wrote the Template Toolkit plugin modules, with assistance from Simon Matthews in the case of the XML::DOM plugin. Matt Sergeant wrote the XML::XPath module. Enno Derksen and Clark Cooper wrote the XML::DOM module. Jonathan Eisenzopf wrote the XML::RSS mod- ule. Grant McLean wrote the XML::Simple module. Clark Cooper and Larry Wall wrote the XML::Parser module. James Clark wrote the expat library. COPYRIGHT
Copyright (C) 1996-2007 Andy Wardley. All Rights Reserved. This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. SEE ALSO
Template, Template::Plugins, Template::Plugin::XML::DOM, Template::Plugin::XML::RSS, Template::Plugin::XML::Simple, Template::Plug- in::XML::XPath perl v5.8.8 2008-03-01 Template::Plugin::XML(3pm)
All times are GMT -4. The time now is 11:24 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy