Grep xml tags


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Grep xml tags
# 1  
Old 07-21-2005
Grep xml tags

Hi

I want to get the value between to XML tags as follows

<EAN>12345</EAN>

so i would want to return 12345. i have tried sed and awk but can't do it.

can anyone help?
# 2  
Old 07-21-2005
Try this.

Code:
sed -n -e 's/<EAN>\([0-9][0-9]*\)<\/EAN>/\1/p' xmlfile

Vino
# 3  
Old 07-21-2005
That doesn't seem to work

My XML is as follows and i want to get the value between the UpcEan flags
Code:
<Baskets xsi:noNamespaceSchemaLocation="C:/Tom/SGWREA~1/ParserPlan/mapping2/workInProgress/RtiOutput.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><Basket><BHead><Store>890</Store><TradingDate>2005-07-11</TradingDate><TxnDateTime>2005-06-26 15:58:25</TxnDateTime><TillBankId>2</TillBankId><PosNo>102</PosNo><PosTxnNo>237</PosTxnNo><CashierId>512</CashierId><TxnVoidInd>N</TxnVoidInd><NoSale>0</NoSale><StyOrderNumber>0</StyOrderNumber><BagCount>0</BagCount><BagValue>0</BagValue><CustomerCountInd>Y</CustomerCountInd><ReplayInd>N</ReplayInd></BHead><BItems><BItem><LongShortSaleInd>S</LongShortSaleInd><ClassGroup>#NotFound#</ClassGroup><UpcEan>0000001199888</UpcEan><CancelItemInd>N</CancelItemInd><SubtractItemInd>N</SubtractItemInd><UnknownItemInd>N</UnknownItemInd><CompItemInd>N</CompItemInd><LinkedItemInd>N</LinkedItemInd><GroupSaleInd>N</GroupSaleInd><DepartmentMode>0</DepartmentMode><ExtendPrice>199</ExtendPrice><Quantity>1</Quantity><UnitPrice>199</UnitPrice><AtForQty>0</AtForQty><PriceFromPlu>#NotFound#</PriceFromPlu><KeyedPrice>0</KeyedPrice><SysReductionId>0</SysReductionId><ReductionInd>N</ReductionInd><RefundItemInd>N</RefundItemInd><RefundReasonCode>0</RefundReasonCode><ItemEntryInd>S</ItemEntryInd><WeightVolume>0</WeightVolume><DriveOffInd>N</DriveOffInd><PennyPerLitreDiscount>0</PennyPerLitreDiscount><FuelItemInd>N</FuelItemInd><PumpTestInd>N</PumpTestInd><GradePrice>0</GradePrice></BItem><BItem><LongShortSaleInd>S</LongShortSaleInd><ClassGroup>#NotFound#</ClassGroup><UpcEan>0000001199888</UpcEan><CancelItemInd>N</CancelItemInd><SubtractItemInd>N</SubtractItemInd><UnknownItemInd>N</UnknownItemInd><CompItemInd>N</CompItemInd><LinkedItemInd>N</LinkedItemInd><GroupSaleInd>N</GroupSaleInd><DepartmentMode>0</DepartmentMode><ExtendPrice>199</ExtendPrice><Quantity>1</Quantity><UnitPrice>199</UnitPrice><AtForQty>0</AtForQty><PriceFromPlu>#NotFound#</PriceFromPlu><KeyedPrice>0</KeyedPrice><SysReductionId>0</SysReductionId><ReductionInd>N</ReductionInd><RefundItemInd>N</RefundItemInd><RefundReasonCode>0</RefundReasonCode><ItemEntryInd>S</ItemEntryInd><WeightVolume>0</WeightVolume><DriveOffInd>N</DriveOffInd><PennyPerLitreDiscount>0</PennyPerLitreDiscount><FuelItemInd>N</FuelItemInd><PumpTestInd>N</PumpTestInd><GradePrice>0</GradePrice></BItem></BItems><SubTotals><SubTotal><ItemCount>2</ItemCount><SubTotalValue>398</SubTotalValue></SubTotal></SubTotals><Tenders><Tender><THead><TenderTypeId>1</TenderTypeId><CancelItemInd>N</CancelItemInd><SubtractItemInd>N</SubtractItemInd><TenderValue>2000</TenderValue><MonetaryChange>0</MonetaryChange><ConvRate>0</ConvRate><OtherValue>0</OtherValue><TenderNo>1</TenderNo></THead></Tender></Tenders></Basket></Baskets>

# 4  
Old 07-21-2005
Code:
sed -n '/<EAN>/,/<\/EAN>/ {
                            s/.*<EAN>\(.*\)<\/EAN>.*$/\1/p
                         }'

bakunin
# 5  
Old 07-21-2005
That didn't work either.

did it work for you?
# 6  
Old 07-21-2005
Code:
sed -n  -e 's/.*<UpcEan>\([0-9][0-9]*\)<\/UpcEan>.*/\1/p' handak9.xml

handak9.xml is the input xml file.

Vino
# 7  
Old 07-21-2005
Thanks - but that doesn't work - have you tried it?
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. 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

2. Shell Programming and Scripting

Getting string from xml tags using sed and grep

how to get string from tags using sed and grep i try to capture the tags : <groupId>org.test.proj.assent</groupId> <artifactId>mainapp</artifactId> <version>mainapp.1.4</version> <packaging>pom</packaging> <name>main app 1</name> and then from there i guess i will... (7 Replies)
Discussion started by: umen
7 Replies

3. Shell Programming and Scripting

How to grep for a word in xml?

Hi, I have the below tag/s in my xml. <foreign-server name="MOHTASHIM_SERVER"> What will be the easist way to extract MOHTASHIM_SERVER without the double quotes "" from the above tag? Desired Output: (10 Replies)
Discussion started by: mohtashims
10 Replies

4. 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

5. 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

6. 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

7. 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

8. Shell Programming and Scripting

Read content between xml tags with awk, grep, awk or what ever...

Hello, I trying to extract text that is surrounded by xml-tags. I tried this cat tst.xml | egrep "<SERVER>.*</SERVER>" |sed -e "s/<SERVER>\(.*\)<\/SERVER>/\1/"|tr "|" " " which works perfect, if the start-tag and the end-tag are in the same line, e.g.: <tag1>Hello Linux-Users</tag1> ... (5 Replies)
Discussion started by: Sebi0815
5 Replies

9. UNIX for Dummies Questions & Answers

Problems with grep and XML

I'm trying to use grep on XML files. The same grep expressions work on plaint text files but not on XML files (which of course are plain text files). Actually, these expressions work on XML files saved in DreamWeaver, but not when the same files are saved in XML Spy. I want grep to treat these... (4 Replies)
Discussion started by: pauljohn
4 Replies

10. Shell Programming and Scripting

Grep XML tags

I want to search the below XML pattern in the XML files, but the XML files would be in a .GZ files, <PRODID>LCTO84876</PRODID> <PARTNUMBER>8872AC1</PARTNUMBER> <WWPRODID>MODEL84876</WWPRODID> <COUNTRY>US</COUNTRY> <LANGUAGE>1</LANGUAGE> What's the command/script to search it ? :confused: (2 Replies)
Discussion started by: saravvij
2 Replies
Login or Register to Ask a Question