Covert xml to csv using xsltproc in shell script


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Covert xml to csv using xsltproc in shell script
# 1  
Old 01-03-2019
Covert xml to csv using xsltproc in shell script

Hi,

I am not familiar with shell scripting. Please help to convert xml files to csv files using xsltproc command in bash script. Find the xml sample

Code:
<?xml version="1.0"?>

-<Source xmlns="link">

<CompanyCd>DSP</CompanyCd>

<SrcSysCd>DSPS</SrcSysCd>

<CountryCd>45</CountryCd>


-<Product>

<Id>582444f3</Id>

<TypeCd>Account A</TypeCd>

<StartDt>2018-02-05T00:00:00+01:00</StartDt>

<StatusCd>SUBMITTED</StatusCd>

<SrcAlignmentNm>SM13_V17_1001</SrcAlignmentNm>


-<Customer>

<CustomerId>5aa56664</CustomerId>

<CustomerTypeCd>HCP</CustomerTypeCd>

<CustomerAltId1>DEBU05110673</CustomerAltId1>

</Customer>


-<Detail>

<DetailId>582444f3</DetailId>

<GroupSrcId>a003E0000</GroupSrcId>

<GroupSrcNm>KENPUL</GroupSrcNm>

<DetailSeq>1</DetailSeq>

</Detail>

</Product>

</Source>

Thanks
# 2  
Old 01-03-2019
You need to attempt to write your own script first. We are here to help you, not do your work for you.
# 3  
Old 01-10-2019
Hi ,

Please find the below code which i have tried, able to get the output, but i need the output in a seperate csv file. how to perform it

Code:
xsltproc x.xslt test.xml

x.xslt code is as below
Code:
<xsl:stylesheet version="1.0" >
<xsl:output method="text"/>

<xsl:template match ="/">
         <xsl:for-each select="Source/Product">

   <xsl:value-of select="Id" />
         <xsl:text>;</xsl:text>
   <xsl:value-of select="TypeCd"/>
         <xsl:text>;</xsl:text>
   <xsl:value-of select="StartDt"/>
         <xsl:text>;</xsl:text>
   <xsl:value-of select="StatusCd"/>
         <xsl:text>;</xsl:text>
   <xsl:value-of select="Customer/CustomerId"/>
         <xsl:text>;</xsl:text>
   <xsl:value-of select="Customer/CustomerTypeCd"/>
         <xsl:text>;</xsl:text>
   <xsl:value-of select="Customer/CustomerAltId1"/>
         <xsl:text>;</xsl:text>
   <xsl:value-of select="Customer/Detail/DetailId"/>
         <xsl:text>;</xsl:text>
   <xsl:value-of select="Customer/Detail/GroupSrcId"/>
         <xsl:text>;</xsl:text>
   <xsl:value-of select="Customer/Detail/GroupSrcNm"/>
         <xsl:text>;</xsl:text>
   <xsl:value-of select="Customer/Detail/DetailSeq"/>
                       <xsl:text>&#xa;</xsl:text>
                </xsl:for-each>
       </xsl:template>
</xsl:stylesheet>

--- Post updated at 09:30 PM ---

Hi

I got it in seperate csv file using the command

Code:
xsltproc x.xslt test.xml > output.csv

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Covert simple bash script in perl language

Hello, Anyone please covert this in perl language ######################## if ps faux | grep -v grep | grep ProcessXYZ then echo "$SERVICE is running, , everything is fine" exit 0 else echo "$SERVICE is not running" exit 2 fi Additional... (1 Reply)
Discussion started by: fed.linuxgossip
1 Replies

2. Shell Programming and Scripting

Pass some data from csv to xml file using shell/python

Hello gurus, I have a csv file with bunch of datas in each column. (see attached) Now I have an .xml file in the structure of below: ?xml version="1.0" ?> <component id="root" name="root"> <component id="system" name="system"> <param name="number_of_A" value="8"/> ... (5 Replies)
Discussion started by: Zam_1234
5 Replies

3. Shell Programming and Scripting

Convert XML to CSV using awk or shell script

Hello, I am working on a part of code where I need a awk or shell script to convert the given XML file to CSV or TXT file. There are multiple xml files and of different structure, so a single script is required for converting data. I did find a lot of solutions in the forum but... (16 Replies)
Discussion started by: Rashmitha
16 Replies

4. Shell Programming and Scripting

Xsltproc showing error in parsing xml...help required

I need to parse text between xml tags using xsltproc. It seems the easiest way. Here the Input file looks like <?xml version="1.0" ?> - <tag:ROOT xmlns:as="http://some.org/some.xsd" xmlns:tag="http://www.tag.org/schemas" xmlns:xs="http://some.org/"> - <tag:L1> - <tag:L2> - <tag:L3> ... (2 Replies)
Discussion started by: alpha_1
2 Replies

5. Shell Programming and Scripting

BASH script to parse XML and generate CSV

Hi All, Hope all you are doing good! Need your help. I have an XML file which needs to be converted CSV file. I am not an expert of awk/sed so your help is highly appreciated!! XML file looks like this: <l:event dateTime="2013-03-13 07:15:54.713" layerName="OSB" processName="ABC"... (2 Replies)
Discussion started by: bhaskar_m
2 Replies

6. Shell Programming and Scripting

Facing issue while using xsltproc tp parse XML in bash

I have written a bash script which opens a folder, reads all the *.xml files in it, and pulls the required data that i need from XML tags. I am using xsltproc (my xsl name) (my xml folder location/*.xml) and running this in a for each loop The problem is that some XML files are having special... (3 Replies)
Discussion started by: shivashankar.g
3 Replies

7. Shell Programming and Scripting

Parse XML file into CSV with shell?

Hi, It's been a few years since college when I did stuff like this all the time. Can someone help me figure out how to best tackle this problem? I need to parse a file full of entries that look like this: <eq action="A" sectyType="0" symbol="PGR" exch="CA" curr="VEF" sess="NORM"... (7 Replies)
Discussion started by: Pcushing
7 Replies

8. Shell Programming and Scripting

any script can be used to covert IP subnet?

say I have some netblocks, is it possible I can use a script to covert the subnet to every single ip? for example, raw file has "1.2.3.0 255.255.128.0" "2.3.4.0 255.255.255.254" and I want to run the script and print out every single IP in these netblocks. or will it be easier if I... (0 Replies)
Discussion started by: fedora
0 Replies

9. Shell Programming and Scripting

How to remove xml namespace from xml file using shell script?

I have an xml file: <AutoData xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Table1> <Data1 10 </Data1> <Data2 20 </Data2> <Data3 40 </Data3> <Table1> </AutoData> and I have to remove the portion xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" only. I tried using sed... (10 Replies)
Discussion started by: Gary1978
10 Replies

10. Shell Programming and Scripting

Sample Unix script file to convert .xml to .csv

Dear all, Can you send me a script file the changes .xml to .csv file. Thanks, Srinivasa (4 Replies)
Discussion started by: srinivasaphani
4 Replies
Login or Register to Ask a Question