I'm not white sure what your output format is: is it really a stream of names and the "xxx rows selected" are just the last words of this single line or is it a list (that is: each name/record on a separate line) and the "xxx rows selected" is in the last line of these?
If the first is the case:
Code:
CreateEMUsers="$(${SQLCMDNOLOG} <<-EOF | sed 's/[0-9]* rows* selected\. *$//'
conn / as sysdba
set pages 0 echo off
SELECT **** from USERS****;
exit
EOF
)"
If the latter is the case it is even easier - you just have to delete the last line:
Code:
CreateEMUsers="$(${SQLCMDNOLOG} <<-EOF | sed '$ d'
conn / as sysdba
set pages 0 echo off
SELECT **** from USERS****;
exit
EOF
)"
I've been a Linux user for quite some time, started out with Red Hat and Mandrake, and just recently moved to Slackware linux.... my question is this:
Is there a big difference between Linux and Unix? If so, what?
I was just looking at Sun's Solaris 8 thats free for download on Intel... (5 Replies)
Friends,
I did following exercise
$ echo '' > test
$ od -b test
$ echo "">test
$ od -b test
$echo > test
$od -b test
Every time I got the following output
0000000 012
0000001
But 012 is octal value for new line character .
Even though there is no apperent new line character... (6 Replies)
Hello. I'm a complete newbie to C programming. I have a C program that wasn't written by me where I need to write some wrappers around it to automate and make it easier for a client to use. The problem is that the program accepts standard input to control the program... I'm hoping to find a simple... (6 Replies)
Hi Guys,
I've been learning UNIX for the past couple of days and I came across this exercise, I can't get my head around it, so I would be ever so grateful if I could receive some sort of help or direction with this.
Create a file with x amount of lines in it, the content of your choice. ... (3 Replies)
Hi,
Please don't berate me over the simplicity of these questions. I have recently gotten into bash shell scripting and enjoy it quite a bit. One thing I have not found the answer to though is when naming a shell script, what extension is normally used (ie myscript.?)? Also where is the standard... (5 Replies)
I had a script in solaris wich i read data, for example:
Number 1: _
and the cursor use to be in '_' place because in the code of the script i write:
echo "Number 1:\c"
but i copy the script to a linux and the cursor 'jump' to the begining of the next line like:
Number 1:... (2 Replies)
hi everybody;
trying to c unix programming and ive stucked with a problem:
simple program
filedr=open("tempfile",O_RDWR|O_TRUNC,0);
write(filedr,msg1,6);
int i;
i=read(filedr,msg3,4);
it returns 0 bytes read ... why?
well if i try to poll() before read , it doesnt indicate POLLHUP or... (4 Replies)
I am having trouble making this statement work. I am passing in a number value for the number of days to keep archive logs for and wanted to make sure that it is a number. I have a script that will return 1 for is a number and 0 for is not a number. I also want to make sure that the number is not... (2 Replies)
Cheers!
In /etc/syslog.conf, if an error type is not specified, is it logged anywhere (most preferable is it logged to /var/log/messages) or not?
To be more precise I am interested in error and critical level messages. At default these errors are not specified in syslog.conf, and I need to... (6 Replies)
Discussion started by: dr1zzt3r
6 Replies
LEARN ABOUT OPENDARWIN
funtablerowget
funtablerowget(3) SAORD Documentation funtablerowget(3)NAME
FunTableRowGet - get Funtools rows
SYNOPSIS
#include <funtools.h>
void *FunTableRowGet(Fun fun, void *rows, int maxrow, char *plist,
int *nrow)
DESCRIPTION
The FunTableRowGet() routine retrieves rows from a Funtools binary table or raw event file, and places the values of columns selected by
FunColumnSelect() into an array of user structs. Selected column values are automatically converted to the specified user data type (and
to native data format) as necessary.
The first argument is the Fun handle associated with this row data. The second rows argument is the array of user structs into which the
selected columns will be stored. If NULL is passed, the routine will automatically allocate space for this array. (This includes proper
allocation of pointers within each struct, if the "@" pointer type is used in the selection of columns. Note that if you pass NULL in the
second argument, you should free this space using the standard free() system call when you are finished with the array of rows.) The third
maxrow argument specifies the maximum number of rows to be returned. Thus, if rows is allocated by the user, it should be at least of size
maxrow*sizeof(evstruct).
The fourth plist argument is a param list string. Currently, the keyword/value pair "mask=transparent" is supported in the plist argument.
If this string is passed in the call's plist argument, then all rows are passed back to the user (instead of just rows passing the filter).
This is only useful when FunColumnSelect() also is used to specify "$region" as a column to return for each row. In such a case, rows
found within a region have a returned region value greater than 0 (corresponding to the region id of the region in which they are located),
rows passing the filter but not in a region have region value of -1, and rows not passing any filter have region value of 0. Thus, using
"mask=transparent" and the returned region value, a program can process all rows and decide on an action based on whether a given row
passed the filter or not.
The final argument is a pointer to an int variable that will return the actual number of rows returned. The routine returns a pointer to
the array of stored rows, or NULL if there was an error. (This pointer will be the same as the second argument, if the latter is
non-NULL).
/* get rows -- let routine allocate the row array */
while( (buf = (Ev)FunTableRowGet(fun, NULL, MAXROW, NULL, &got)) ){
/* process all rows */
for(i=0; i<got; i++){
/* point to the i'th row */
ev = buf+i;
/* rearrange some values. etc. */
ev->energy = (ev->pi+ev->pha)/2.0;
ev->pha = -ev->pha;
ev->pi = -ev->pi;
}
/* write out this batch of rows */
FunTableRowPut(fun2, buf, got, 0, NULL);
/* free row data */
if( buf ) free(buf);
}
As shown above, successive calls to FunTableRowGet() will return the next set of rows from the input file until all rows have been read,
i.e., the routine behaves like sequential Unix I/O calls such as fread(). See evmerge example code for a more complete example.
Note that FunTableRowGet() also can be called as FunEventsGet(), for backward compatibility.
SEE ALSO
See funtools(7) for a list of Funtools help pages
version 1.4.2 January 2, 2008 funtablerowget(3)