Sponsored Content
Full Discussion: need help on xml processing
Top Forums Shell Programming and Scripting need help on xml processing Post 302221265 by demoprog on Monday 4th of August 2008 04:51:57 AM
Old 08-04-2008
need help on xml processing

I am trying to divide a xml file(my.xml) like this:

Code:
<?xml version="1.0" encoding="UTF-8"?>
<Proto PName="hmmmmmmm">
     <Menu id="A" ver="1">
         <P>
             <P name="AA" Type="X"/>
             <P name="BB" Type="Y"/>
             <P name="CC" Type="Z"/>
         </P>
         <main>
             <K name="DD" type="X"/>
             <K name="EE" type="Y"/>
         </main>
     </Menu>
    <Menu id="B" ver="1">
        <P>
            <P name="XX" Type="X"/>
            <P name="BB" Type="Y"/>
            <P name="CC" Type="Z"/>
        </P>
        <main>
            <K name="DD" type="X"/>
            <K name="EE" type="Y"/>
        </main>
    </Menu>
    <Menu id="C" ver="1">
         <P>
             <P name="ZZ" Type="X"/>
             <P name="BB" Type="Y"/>
             <P name="CC" Type="Z"/>
         </P>
         <main>
             <K name="DD" type="X"/>
             <K name="EE" type="Y"/>
         </main>
     </Menu>
</Proto>

I am trying to get 3 files out of the above. .i.e.

Code:
$ cat my.A.xml
<?xml version="1.0" encoding="UTF-8"?>
<Proto PName="hmmmmmmm">
    <Menu id="A" ver="1">
        <P>
            <P name="AA" Type="X"/>
            <P name="BB" Type="Y"/>
            <P name="CC" Type="Z"/>
        </P>
        <main>
            <K name="DD" type="X"/>
            <K name="EE" type="Y"/>
        </main>
    </Menu>
</Proto>


$ cat my.B.xml
<?xml version="1.0" encoding="UTF-8"?>
<Proto PName="hmmmmmmm">
    <Menu id="B" ver="1">
        <P>
            <P name="XX" Type="X"/>
            <P name="BB" Type="Y"/>
            <P name="CC" Type="Z"/>
        </P>
        <main>
            <K name="DD" type="X"/>
            <K name="EE" type="Y"/>
        </main>
    </Menu>
</Proto>

and similarly my.C.xml

I tried this: 

$ awk '/<Menu id=/,/<\/Menu>/' my.xml

is there any way available other than perl for this xml processing.
 

8 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Shell Script syntax for XML processing

Hi All, I am new to Shell scripting. I have a log file containing XML Messages.Each XML Message is accompanied with a timestamp.I need to count the the number of messages that get logged in a particular timeinterval.Is there any command/Syntax to achieve this. Any code/example is... (5 Replies)
Discussion started by: vignesh53
5 Replies

2. Shell Programming and Scripting

CSV processing to XML

Hi, i am really fresh with shell scripting and programming, i have an issue i am not able to solve to populate data on my server for Cisco IP phones. I have CSV file within the following format: ;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;... (9 Replies)
Discussion started by: angel2008
9 Replies

3. Shell Programming and Scripting

How to make parallel processing rather than serial processing ??

Hello everybody, I have a little problem with one of my program. I made a plugin for collectd (a stats collector for my servers) but I have a problem to make it run in parallel. My program gathers stats from logs, so it needs to run in background waiting for any new lines added in the log... (0 Replies)
Discussion started by: Samb95
0 Replies

4. Programming

help me with perl script xml processing

Hi everyone, I have Xml files in a folder, I need to extract some attribute values form xml files and store in a hash. My xml file look like this. <?xml version="1.0" encoding="UTF-8"?> <Servicelist xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"... (0 Replies)
Discussion started by: pavani reddy
0 Replies

5. Shell Programming and Scripting

Help with XML file processing

I need to get all session_ID 's for product="D-0002" from a XML file: Sample input: <session session_ID="6411206" create_date="2012-04-10-10.22.13.000000"> <marketing_info> <program_id>D4AWFU</program_id> <subchannel_id>abc</subchannel_id> </marketing_info> ... (1 Reply)
Discussion started by: karumudi7
1 Replies

6. Shell Programming and Scripting

processing xml with awk

With the following input sample extracted from a xml file <rel ver="123"> <mod name="on"> <node env="ac" env="1"> <ins ip="10.192.0.1"/> <ins ip="10.192.0.2"/> ... (1 Reply)
Discussion started by: cabrao
1 Replies

7. Programming

awk processing / Shell Script Processing to remove columns text file

Hello, I extracted a list of files in a directory with the command ls . However this is not my computer, so the ls functionality has been revamped so that it gives the filesizes in front like this : This is the output of ls command : I stored the output in a file filelist 1.1M... (5 Replies)
Discussion started by: ajayram
5 Replies

8. UNIX for Beginners Questions & Answers

General Purpose XML Processing

I've been kicking this around for a while now, I might as well post it here. v0.0.9, now properly supporting self-closing tags. v0.0.8, an important quoting fix and a minor change which should handle special <? <!-- etc. tags without seizing up as often. Otherwise the code hasn't changed much.... (6 Replies)
Discussion started by: Corona688
6 Replies
STAG-SPLITTER(1p)					User Contributed Perl Documentation					 STAG-SPLITTER(1p)

NAME
stag-splitter - splits a stag file into multiple files SYNOPSIS
stag-splitter -split person -name social_security_no file.xml DESCRIPTION
Splits a file using a user specified parser (default xml) around a specified split node, naming each file according to the name argument the files will be named anonymously, unless the '-name' switch is specified; this will use the value of the specified element as the filename eg; if we have <top> <a> <b>foo</b> <c>yah</c> <d> <e>xxx</e> </d> </a> <a> <b>bar</b> <d> <e>wibble</e> </d> </a> </top> if we run stag-splitter -split a -name b it will generate two files, "foo.xml" and "bar.xml" input format can be 'xml', 'sxpr' or 'itext' - if this is left blank the format will be guessed from the file suffix the output format defaults to the same as the input format, but another can be chosen. files go in the current directory, but this can be overridden with the '-dir' switch USAGE
stag-splitter [-split <ELEMENT-NAME>] [-name <ELEMENT-NAME>] [-dir <DIR>] [-format <INPUT-FORMAT>] [-outformat <OUTPUT-FORMAT>] <FILENAMES> -p|parser FORMAT FORMAT is one of xml, sxpr or itext, or the name of a perl module xml assumed as default -w|writer FORMAT FORMAT is one of xml, sxpr or itext, or the name of a perl module -split|s NODE node to split on -name|n NODE field/element to use when naming files will use surrogate IDs if this argument not specified -dir|d DIR write files to this directory perl v5.10.0 2008-12-23 STAG-SPLITTER(1p)
All times are GMT -4. The time now is 12:25 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy