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


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting How to retrieve values from XML file and update them in the same position! PLEASE HELP?
# 1  
Old 12-23-2015
Tools 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 will increment the number value in those fields as I and update the original value in the xml file. I have read up about GREP and SED commands but do not know how to properly execute them.

Below I have added the "Test.xml" I need to use.

<?xml version="1.0" standalone="yes"?>
<GROUP ID="062001" Name="CIF: Create Customer">
<TX>
<FIELD Format="9(17)" ID="accntNumber1" />
<FIELD Format="XX" ID="cust_type1" value="01"/>
<FIELD Format="9(5)" ID="DefInteger1" />
<FIELD Format="99" ID="title1" value="01"/>
<FIELD Format="X(20)" ID="firstname1" value="Test 11"/>
<FIELD Format="X(20)" ID="firstname2" />
<FIELD Format="X(35)" ID="surname1" value="Test 11"/>
<FIELD Format="X(5)" ID="surname2" />
<FIELD Format="X(60)" ID="name" />
<FIELD Format="X(40)" ID="addr1" Offset="20" value="1 Main Street"/>
<FIELD Format="X(40)" ID="addr2" value="Somerset West"/>
<FIELD Format="X(40)" ID="addr3" value="Cape Town"/>
<FIELD Format="X(40)" ID="addr4" value="8000"/>
<FIELD Format="X(8)" ID="DefaultString8" />
<FIELD Format="XX" ID="countrycode1" value="ZA"/>
<FIELD Format="X(12)" ID="DefaultString9" />
<FIELD Format="X(12)" ID="DefaultString10" />
<FIELD Format="X(12)" ID="DefaultString11" />
<FIELD Format="X(12)" ID="DefaultString12" />
<FIELD Format="XX" ID="nationality1" />
<FIELD Format="X" ID="occupanc1" />
<FIELD Format="99" ID="languagecode1" value="01"/>
<FIELD Format="X(14)" ID="IDnumber" value="0210235810087"/>
<FIELD Format="ddMMyyyy" ID="date1" value="12102012" />
<FIELD Format="X(30)" ID="DefaultString14" />
<FIELD Format="99" ID="id_type1" value="05"/>
<FIELD Format="XX" ID="dom_risk1" value="ZZ"/>
<FIELD Format="XX" ID="BorderRisk1" value="ZZ"/>
<FIELD Format="9" ID="DefInteger5" />
<FIELD Format="999" ID="DefInteger4" />
<FIELD Format="X(4)" ID="segm_code1" />
<FIELD Format="X" ID="VIP_code2" />
<FIELD Format="9" ID="DefInteger12" />
<FIELD Format="9(5)" ID="DefInteger2" />
<FIELD Format="X" ID="yesno1" />
<FIELD Format="X" ID="yesno2" />
<FIELD Format="X" ID="yesno3" />
<FIELD Format="X" ID="yesno4" />
<FIELD Format="X" ID="yesno5" />
<FIELD Format="X(4)" ID="indcode1" />
<FIELD Format="XX" ID="countrycode2" />
<FIELD Format="X(5)" ID="groupCode" />
<FIELD Format="X(5)" ID="busSectorCode" />
<FIELD Format="99" ID="ReasonCode" />
<FIELD Format="99" ID="NameStatus" />
<FIELD Format="X(50)" ID="EmailAdd" value="
test11@gmail.com" />
<FIELD Format="X(20)" ID="MiddleName2" />
<FIELD Format="X(20)" ID="MiddleName3" />
<FIELD Format="X(40)" ID="ContactName1" />
<FIELD Format="9(12)" ID="CnctPhone101" />
<FIELD Format="9(12)" ID="CnctPhone102" />
<FIELD Format="X(40)" ID="ContactName2" />
<FIELD Format="9(12)" ID="CnctPhone201" />
<FIELD Format="9(12)" ID="CnctPhone202" />

<FIELD Format="X" ID="cellVerified" />
<FIELD Format="X" ID="cellServices" />
<FIELD Format="X" ID="cellNoChanged" />
<FIELD Format="99" ID="contrLang" />
<FIELD Format="X(40)" ID="newSurname" />
<FIELD Format="9(8)" ID="idExpDate" />
<FIELD Format="X(2)" ID="whySaPP" />
<FIELD Format="X" ID="openReason" value=" "/>
<FIELD Format="X(2)" ID="CONT1_TITLE" />
<FIELD Format="X(2)" ID="CONT2_TITLE" />
<FIELD Format="X" ID="CONT1_REL" />
<FIELD Format="X" ID="CONT2_REL" />
<FIELD Format="X(12)" ID="CONT1_WORK_PH" />
<FIELD Format="X(12)" ID="CONT2_WORK_PH" />
<FIELD Format="X(50)" ID="CONT1_EMAIL_ID" />
<FIELD Format="X(50)" ID="CONT2_EMAIL_ID" />
<FIELD Format="9(8)" ID="DATE_OF_BIRTH" />
<FIELD Format="X" ID="GENDER" />
<FIELD Format="99" ID="DHA_STATUS" />

</TX>
<RX>
<FIELD Format="9(3)" ID="soc" />
<FIELD Format="9(18)" ID="custNo" Offset="1"/>
</RX>
</GROUP>


The fields that need to be updated are:

<FIELD Format="X(20)" ID="firstname1" value="Test 11"/>
<FIELD Format="X(35)" ID="surname1" value="Test 11"/>

<FIELD Format="X(14)" ID="IDnumber" value="0210235810087"/>

The idea is to increment:

<FIELD Format="X(20)" ID="firstname1" value="Test 11"/> to
<FIELD Format="X(20)" ID="firstname1" value="Test 12"/>

<FIELD Format="X(35)" ID="surname1" value="Test 11"/> to
<FIELD Format="X(35)" ID="surname1" value="Test 12"/>

<FIELD Format="X(14)" ID="IDnumber" value="0210235810087"/> to
<FIELD Format="X(14)" ID="IDnumber" value="0210235810087 + 1"/> SmilieSmilieSmilieSmilieSmilieSmilie

until the counter reaches 100

Please help if you can. Would really appreciate any help.
# 2  
Old 12-23-2015
Duplicate post?
# 3  
Old 12-23-2015
Moderator's Comments:
Mod Comment Although this appears to be the 1st post of two duplicates, the other thread XML reading and parsing! Please help has an answer posted, so this thread is now closed.

Please continue any further discussion on this topic in that thread.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Update particular tag in a XML file

Below is the content in my XML file <name>XXX</name> <eventType>Uptime</eventType> <eventType>Delay</eventType> <eventType>Delay</eventType> <name>YYY</name> <eventType>Uptime</eventType> <eventType>Delay</eventType> ... (12 Replies)
Discussion started by: Viswanatheee55
12 Replies

2. Shell Programming and Scripting

Find and update line in xml file

Hi, I have a xml file that I need to modify 1 line to change some value from 2 to 10 (or any number). Sample input: <!-- some text here> . . . <message:test name="ryan"> <message:sample-channel charset="UTF-8" max-value="2" wait="20"> ... (5 Replies)
Discussion started by: brichigo
5 Replies

3. Shell Programming and Scripting

Positional Update of XML File

Hello, I have a XML file and need to update the data for a specific XML Attribute in the file. I need a Perl or Awk command to look for <INTERCHANGE_CONTROL_NO>000000601</INTERCHANGE_CONTROL_NO> in the XML file and change the first two 0 of the value to 9. For instance ... (4 Replies)
Discussion started by: Praveenkulkarni
4 Replies

4. Shell Programming and Scripting

Script need to do update xml file

<avp name="CC-Request-Type" value="1"> </avp> <avp name="CC-Request-Number" value="0"> </avp> <avp name="Subscription-Id"> <avp name="Subscription-Id-Type" value="0"></avp> <avp name="Subscription-Id-Data" value="4081234567"></avp> </avp> <avp... (5 Replies)
Discussion started by: gstar
5 Replies

5. Shell Programming and Scripting

Comparing delta values of one xml file in other xml file

Hi All, I have two xml files. One is having below input <NameValuePair> <name>Daemon</name> <value>tcp:7474</value> </NameValuePair> <NameValuePair> <name>Network</name> <value></value> </NameValuePair> ... (2 Replies)
Discussion started by: sharsour
2 Replies

6. Shell Programming and Scripting

Find and count unique date values in a file based on position

Hello, I need some sort of way to extract every date contained in a file, and count how many of those dates there are. Here are the specifics: The date format I'm looking for is mm/dd/yyyy I only need to look after line 45 in the file (that's where the data begins) The columns of... (2 Replies)
Discussion started by: ronan1219
2 Replies

7. Shell Programming and Scripting

How to generate a csv files by separating the values from the input file based on position?

Hi All, I need help for doing the following. I have a input file like: aaaaaaaaaabbbbbbbbbbbbbbbbbbbb cccbbbbbaaaaaadddddaaaabbbbbbb now I am trying to generate a output csv file where i will have for e.g. 0-3 chars of each line as the first column in the csv, 4-10 chars of the line as... (3 Replies)
Discussion started by: babom
3 Replies

8. Shell Programming and Scripting

perl script to update a xml file

Hi experts, I have a set of xml files in folder which has the below field. <mm:sessionID>157.235.206.12900397BE4:A</mm:sessionID>, I need to update this field regularly with new session id, which I have it from a login file. Can anyone tell me how to add a new value in <mm:sessionID>... (3 Replies)
Discussion started by: amvarma77
3 Replies

9. Shell Programming and Scripting

How to retrieve value from xml tags

hello, I have a file that have lines that contains xml tags. for each line, i want to retrieve the value from the following xml tags and output it to another file with the values only, comma seperated. what is the best way to do this? again, the string is all in 1 line one, though it has many... (9 Replies)
Discussion started by: davidsouk
9 Replies

10. Shell Programming and Scripting

Perl: update lastmod in xml file

I'm trying to write a perl script that I can run as a cron job in root of my web server that will look for .shtml files get their last modified date and replace it in the sitemap_test.xml file. the problem is the substitution doesn't work and when I print to MYFILE it adds the lastmod to the end of... (3 Replies)
Discussion started by: skilodge
3 Replies
Login or Register to Ask a Question