Sponsored Content
Full Discussion: I can't read !!!
Top Forums UNIX for Dummies Questions & Answers I can't read !!! Post 302135938 by Bob_Loblaw on Thursday 13th of September 2007 05:00:49 PM
Old 09-13-2007
I can't read !!!

Hello All,

Being somewhat new to UNIX I naturally need some help. I have an XML file the I need to retrieve data from and that data is between the opening and closing tags. I have this so far....
Code:
for records in $lvar_sourcedir/$lvar_sourcefile
 do
write_output "Retrieving the data from the XML file now....."

while read states
 do
if [[ $states == *\<ALERT\ ALTID=* || $states == *\<DISPDTE* || $states == *\<DISP* || $states == *\<CMNT* || $states == *\<WFDOMN* || $states == *\<UID* ]]; then
	get_alertid=`echo $states | sed -e 's/^.*<ALERT ALTID="//g' | sed 's/[.">].*$//'`
		get_dispdte=`echo $states | sed 's/^.*<DISPDTE>//g' | sed 's/[</DISPDTE>].*$//'`
			get_disp=`echo $states | sed 's/^.*<DISP>//g' | sed 's/[</DISP>].*$//'`
				get_cmnt=`echo $states | sed 's/^.*<CMNT>//g' | sed 's/[</CMNT>].*$//'`
					get_wfdomn=`echo $states | sed 's/^.*<WFDOMN>//g' | sed 's/[</WFDOMN>].*$//'`
						get_uid=`echo $states | sed 's/^.*<UID>//g' | sed 's/[</UID>].*$//'`

echo "-------------------------------"
echo "Alert ID - $get_alertid"
echo "-------------------------------"
echo "Disp Date - $get_dispdte"
echo "-------------------------------"
echo "Disposition - $get_disp"
echo "-------------------------------"
echo "Comments - $get_cmnt"
echo "-------------------------------"
echo "Doman - $get_wfdomn"
echo "-------------------------------"
echo "User ID - $get_uid"
echo "-------------------------------"
	
fi

The problem exists where the data being retrieved has a letter in the same case as in the XML tag. For example,
-------------------------------
Alert ID - 0000005132
-------------------------------
Disp Date - 2000-08-28
-------------------------------
Disposition - Add to Fraud
-------------------------------
Comments -
-------------------------------
Doman -
-------------------------------
User ID - 5132
-------------------------------
Notice the Disposition section has "ADD to Fraud" but the XML file data has "Add to FraudDatabase" and the XML tags are <DISP>Add to FraudDatabase</DISP>

If I change the data to be "add to frauddatabase" there is not problem and the line is read, but this is not an option for me.

XML Snippit
Code:
<ALERT ALTID="0000005132."><DISPDTE>2000-08-28</DISPDTE><DISP>add to frauddatabase</DISP><CMNT>This is just a test1</CMNT><WFDOMN>Money Laundering1</WFDOMN><UID>5132</UID>
<ALERT ALTID="0000005146."><DISPDTE>2000-09-28</DISPDTE><DISP>Add to FraudDatabase</DISP><CMNT>This is just a test2</CMNT><WFDOMN>Money Laundering2</WFDOMN><UID>5146</UID>
<ALERT ALTID="0000005156."><DISPDTE>2000-10-28</DISPDTE><DISP>Add to FraudDatabase</DISP><CMNT>This is just a test3</CMNT><WFDOMN>Money Laundering3</WFDOMN><UID>5156</UID>

Yeah, long winded I know but thanks in advance.

BTW - I'm using Korn Shell on UNIX version 8.1
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Can I use read to read content of a variable

Can I use the read command to read the contents of a variable? I'm trying by using the following code and getting nothing back. I'm in a Linux environment. #!/bin/ksh IFS=~ VAR1=1~2~3~4 echo $VAR1 | read a b c d print "$a $b $c $d" (9 Replies)
Discussion started by: nmalencia
9 Replies

2. Programming

Cannot read a file with read(fd, buffer, buffersize) function

# include <stdio.h> # include <fcntl.h> # include <stdlib.h> # include <sys/stat.h> int main(int argc, char *argv) { int fRead, fPadded, padVal; int btRead; int BUFFSIZE = 512; char buff; if (argc != 4) { printf ("Please provide all of the... (3 Replies)
Discussion started by: naranja18she
3 Replies

3. UNIX for Advanced & Expert Users

read() wont allow me to read files larger than 2 gig (on a 64bit)

Hi the following c-code utilizing the 'read()' man 2 read method cant read in files larger that 2gig. Hi I've found a strange problem on ubuntu64bit, that limits the data you are allowed to allocate on a 64bit platform using the c function 'read()' The following program wont allow to allocate... (14 Replies)
Discussion started by: monkeyking
14 Replies

4. Shell Programming and Scripting

Read Embedded Newline characters with read (builtin) in KSH93

Hi Guys, Happy New Year to you all! I have a requirement to read an embedded new-line using KSH's read builtin. Here is what I am trying to do: run_sql "select guestid, address, email from guest" | while read id addr email do ## Biz logic goes here done I can take care of any... (6 Replies)
Discussion started by: a_programmer
6 Replies

5. UNIX for Dummies Questions & Answers

Read statement within while read loop

hi, this is my script #!/bin/ksh cat temp_file.dat | while read line do read test if ]; then break else echo "ERROR" fi done when i execute this code , the script does wait for the user input . it directly prints "ERROR" and terminates after the no. of times as there... (3 Replies)
Discussion started by: siva1612
3 Replies

6. UNIX for Dummies Questions & Answers

When reading a csv file, counter to read 20 lines and wait for minute then read next 20 till end

Hello All, i am a newbie and need some help when reading a csv file in a bourne shell script. I want to read 10 lines, then wait for a minute and then do a reading of another 10 lines and so on in the same way. I want to do this till the end of file. Any inputs are appreciated ... (3 Replies)
Discussion started by: victor.s
3 Replies

7. Shell Programming and Scripting

How to read log files from last read

Hi i am looking a way to look at a log file(log.txt) from the last time I've read it. However after some days the main log file(log.txt) is rename to (log.txt.1). So now i will have two log files as below. log.txt.1 log.txt Now, i have to read the log from the point where i have left... (3 Replies)
Discussion started by: sumitsks
3 Replies

8. Shell Programming and Scripting

Help with Bash piped while-read and a read user input at the same time

Hi I am new to writing script and want to use a Bash Piped while-read and read from user input. if something happens on server.log then do while loop or if something happend on user input then do while loop. Pseudocode something like: tail -n 3 -f server.log | while read serverline || read... (8 Replies)
Discussion started by: MyMorris
8 Replies

9. Shell Programming and Scripting

Read from file and execute the read command

Hi, I am facing issues with the below: I have a lookup file say lookup.lkp.This lookup.lkp file contains strings delimited by comma(,). Now i want to read this command from file and execute it. So my code below is : Contents in the lookup.lkp file is : c_e,m,a,`cd $BOX | ls cef_*|tail... (7 Replies)
Discussion started by: vital_parsley
7 Replies

10. Shell Programming and Scripting

[Bash] Read History function & Read Arrowkeys

Hi. How can I create a history function? (By "read" command or so) & How can I configure a read command so that the arrow keys are not displayed so funny? (^[[A) Thanks in advance. (4 Replies)
Discussion started by: sinnlosername
4 Replies
XML::LibXML::XPathExpression(3) 			User Contributed Perl Documentation			   XML::LibXML::XPathExpression(3)

NAME
XML::LibXML::XPathExpression - XML::LibXML::XPathExpression - interface to libxml2 pre-compiled XPath expressions SYNOPSIS
use XML::LibXML; my $compiled_xpath = XML::LibXML::XPathExpression->new('//foo[@bar="baz"][position()<4]'); # interface from XML::LibXML::Node my $result = $node->find($compiled_xpath); my @nodes = $node->findnodes($compiled_xpath); my $value = $node->findvalue($compiled_xpath); # interface from XML::LibXML::XPathContext my $result = $xpc->find($compiled_xpath,$node); my @nodes = $xpc->findnodes($compiled_xpath,$node); my $value = $xpc->findvalue($compiled_xpath,$node); $compiled = XML::LibXML::XPathExpression->new( xpath_string ); DESCRIPTION
This is a perl interface to libxml2's pre-compiled XPath expressions. Pre-compiling an XPath expression can give in some performance benefit if the same XPath query is evaluated many times. "XML::LibXML::XPathExpression" objects can be passed to all "find..." functions "XML::LibXML" that expect an XPath expression. new() $compiled = XML::LibXML::XPathExpression->new( xpath_string ); The constructor takes an XPath 1.0 expression as a string and returns an object representing the pre-compiled expressions (the actual data structure is internal to libxml2). AUTHORS
Matt Sergeant, Christian Glahn, Petr Pajas VERSION
2.0018 COPYRIGHT
2001-2007, AxKit.com Ltd. 2002-2006, Christian Glahn. 2006-2009, Petr Pajas. perl v5.16.3 2013-05-13 XML::LibXML::XPathExpression(3)
All times are GMT -4. The time now is 03:54 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy