10 More Discussions You Might Find Interesting
1. Programming
As this function returns the address of the string corressponding to the errno value provided to it. Can someone please let me know where, in the memory, it could be (on freeBSD).
The MAN page tells under the BUG section that "For unknown error numbers, the strerror() function will return its... (5 Replies)
Discussion started by: Praveen_218
5 Replies
2. UNIX for Dummies Questions & Answers
Hi all,
I have a csv file that appears as follows:
,2013/03/26,2012/12/26,4,1,"2017/09/26,5.75%","2017/09/26,1,2018/09/26,1,2019/09/26,1,2020/09/26,1,2021/09/26,1",,,2012/12/26,now when i use the split function like this:
my @f = split/,/; the split function will split the data that is... (2 Replies)
Discussion started by: WongSifu
2 Replies
3. Programming
H friends,
As we know, a function returns a value and that value is saved somwhere. like
int Sum( int x, int y )
{
return x + y;
}
Total = Sum( 10, 20 );
The value 30 is saved in variable Total.
Now the question is, what int value does the function main return, and where is it... (5 Replies)
Discussion started by: gabam
5 Replies
4. Shell Programming and Scripting
Hi Guys
I have a text file that contains the message like this
/var/log/messages.all-20120401: Mar 26 12:12:23 brent kernel: NVRM: Xid (0003:00): 43, 0005 00009097 00000000 00000000 00001b0c 1000f010
/var/log/messages.all-20120401: Mar 27 20:42:40 brent kernel: NVRM: Xid (0003:00): 43,... (4 Replies)
Discussion started by: ab52
4 Replies
5. Shell Programming and Scripting
The required form of command is as
perl /product/editique/RFR/preproc/scripts/ExprEval.pl -P 'EGAL_CHAINE (" ","")' -K /varsoft/editique/RFR/preproc/logs/D.RFR.PR.PCAC9.PCPA.00.54.20110920.Evaluate_Expression.logWhat's wrong with this code (it is not quoting the function, I have checked... (1 Reply)
Discussion started by: ezee
1 Replies
6. Programming
Hi,
from the manual
listen(2): listen for connections on socket - Linux man page
It has a parameter called backlog and it limits the maximum length of queue of pending list.
If I set backlog to 128, is it means no more than 128 packets can be handled by server?
If I have three... (3 Replies)
Discussion started by: sehang
3 Replies
7. Shell Programming and Scripting
Hi,
I am having issue with awk command . This command is running in the command prompt but inside a shell script.
awk -F'| ' 'int($1)==$1 && int($3) ==$3' int_check.txt
$cat int_check.txt
123|abc|123x
234|def|345
When i run it inside a shell script i am getting the error
"bailing... (5 Replies)
Discussion started by: ashwin3086
5 Replies
8. Shell Programming and Scripting
Hi
I have a small function which returns a wrong value.
The function tries to make a connection to oracle database and tries to get the open_mode of the database in the variable status.
However when a database is down the value of the status column is set to READWRITE i am not sure why.
I... (0 Replies)
Discussion started by: xiamin
0 Replies
9. Shell Programming and Scripting
awk -vwgt=$vWeight -vfac=$vFactor '
BEGIN {
printf("wgt:" wgt "\n");
printf("factor:" fac "\n");
total = sprintf("%.0f", wgt * fac);
total2 = sprintf("%.0f", int(wgt * fac));
printf("total:" total "\n");
printf("total2:" total2 "\n");
}
'
if
vWeight=326.4
vFactor=100
the result... (2 Replies)
Discussion started by: qa.bingo
2 Replies
10. UNIX for Dummies Questions & Answers
hello everybody!
I want to create a file with permissions for read, write, and execute to everybody using C, so I write this code:
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
int main(){
int fileDescriptor;
fileDescriptor =... (2 Replies)
Discussion started by: csnmgeek
2 Replies
regexpr(3GEN) String Pattern-Matching Library Functions regexpr(3GEN)
NAME
regexpr, compile, step, advance - regular expression compile and match routines
SYNOPSIS
cc [flag...] [file...] -lgen [library...]
#include <regexpr.h>
char *compile(char *instring, char *expbuf, const char *endbuf);
int step(const char *string, const char *expbuf);
int advance(const char *string, const char *expbuf);
extern char *loc1, loc2, locs;
extern int nbra, regerrno, reglength;
extern char *braslist[], *braelist[];
DESCRIPTION
These routines are used to compile regular expressions and match the compiled expressions against lines. The regular expressions compiled
are in the form used by ed(1).
The parameter instring is a null-terminated string representing the regular expression.
The parameter expbuf points to the place where the compiled regular expression is to be placed. If expbuf is NULL, compile() uses mal-
loc(3C) to allocate the space for the compiled regular expression. If an error occurs, this space is freed. It is the user's responsibil-
ity to free unneeded space after the compiled regular expression is no longer needed.
The parameter endbuf is one more than the highest address where the compiled regular expression may be placed. This argument is ignored if
expbuf is NULL. If the compiled expression cannot fit in (endbuf-expbuf) bytes, compile() returns NULL and regerrno (see below) is set to
50.
The parameter string is a pointer to a string of characters to be checked for a match. This string should be null-terminated.
The parameter expbuf is the compiled regular expression obtained by a call of the function compile().
The function step() returns non-zero if the given string matches the regular expression, and zero if the expressions do not match. If
there is a match, two external character pointers are set as a side effect to the call to step(). The variables set in step() are loc1 and
loc2. loc1 is a pointer to the first character that matched the regular expression. The variable loc2 points to the character after the
last character that matches the regular expression. Thus if the regular expression matches the entire line, loc1 points to the first char-
acter of string and loc2 points to the null at the end of string.
The purpose of step() is to step through the string argument until a match is found or until the end of string is reached.
If the regular expression begins with ^, step() tries to match the regular expression at the beginning of the string only.
The advance() function is similar to step(); but, it only sets the variable loc2 and always restricts matches to the beginning of the
string.
If one is looking for successive matches in the same string of characters, locs should be set equal to loc2, and step() should be called
with string equal to loc2. locs is used by commands like ed and sed so that global substitutions like s/y*//g do not loop forever, and is
NULL by default.
The external variable nbra is used to determine the number of subexpressions in the compiled regular expression. braslist and braelist are
arrays of character pointers that point to the start and end of the nbra subexpressions in the matched string. For example, after calling
step() or advance() with string sabcdefg and regular expression (abcdef), braslist[0] will point at a and braelist[0] will point at g.
These arrays are used by commands like ed and sed for substitute replacement patterns that contain the
notation for subexpressions.
Note that it is not necessary to use the external variables regerrno, nbra, loc1, loc2 locs, braelist, and braslist if one is only checking
whether or not a string matches a regular expression.
EXAMPLES
Example 1: The following is similar to the regular expression code from grep:
#include<regexpr.h>
. . .
if(compile(*argv, (char *)0, (char *)0) == (char *)0)
regerr(regerrno);
. . .
if (step(linebuf, expbuf))
succeed();
RETURN VALUES
If compile() succeeds, it returns a non-NULL pointer whose value depends on expbuf. If expbuf is non-NULL, compile() returns a pointer to
the byte after the last byte in the compiled regular expression. The length of the compiled regular expression is stored in reglength.
Otherwise, compile() returns a pointer to the space allocated by malloc(3C).
The functions step() and advance() return non-zero if the given string matches the regular expression, and zero if the expressions do not
match.
ERRORS
If an error is detected when compiling the regular expression, a NULL pointer is returned from compile() and regerrno is set to one of the
non-zero error numbers indicated below:
ERROR MEANING
11 Range endpoint too large.
16 Bad Number.
25 "digit" out or range.
36 Illegal or missing delimiter.
41 No remembered string search.
42 (~) imbalance.
43 Too many (.
44 More than 2 numbers given in
[~}.
45 } expected after .
46 First number exceeds second
in {~}.
49 [] imbalance.
50 Regular expression overflow.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|MT-Level |MT-Safe |
+-----------------------------+-----------------------------+
SEE ALSO
ed(1), grep(1), sed(1), malloc(3C), attributes(5), regexp(5)
NOTES
When compiling multi-threaded applications, the _REENTRANT flag must be defined on the compile line. This flag should only be used in
multi-threaded applications.
SunOS 5.10 29 Dec 1996 regexpr(3GEN)