Is there any special reason you used char as delimiter for your function?
Whereas normal one is
I guess they are quite different in the background (to rewrite the source code) between the two, as ' ' is for char where " " for string. Yours uses single char as delimiter and the strtok() uses multiple char delimiters, right?
im trying to remove all occurences of " OF xyz " in a file where xyz could be any word assuming xyz is the last word on the line but I won't always be.
at the moment I have sed 's/OF.*//'
but I want a nicer solution which could be in pseudo code
sed 's/OF.* (next token)//'
Is... (6 Replies)
I have one file say CM.txt which contains values like below.Its just a flat file
1000,A,X
1001,B,Y
1002,B,Z
...
..
total around 4 million lines of entries will be in that file.
Now i need to write another file CM1.txt which should have
1000,1
1001,2
1002,3
....
...
..
Here i... (6 Replies)
Hello-
Trying to add two numbers in a ksh shell scripts and i get this error every time I execute
stat1_ex.ksh: + : more tokens expected
stat1=`cat .stat1a.tmp | cut -f2 -d" "`
stat2=`cat .stat2a.tmp | cut -f2 -d" "`
j=$(($stat1 + $stat2)) # < Here a the like the errors out
echo $j... (3 Replies)
Hi,
How do I parse/split lines (strings) read from a file and display the individual tokens in a shell script? Given that the length of individual lines is not constant and number of tokens in each line is also not constant.
The input file could be as below:
... (3 Replies)
Hi all,
I have a variable with value
DateFileFormat=NAME.CODE.CON.01.#.S001.V1.D$.hent.txt
I want this variable to get replaced with :
var2 is a variable with string value
DateFileFormat=NAME\\.CODE\\.CON\\.01\\.var2\\.S001\\.V1\\.D+\\.hent\\.txt\\.xml$
Please Help (3 Replies)
Hey everyone, i needed some help with this one. We move into a new file system (which should be the same as the previous one, other than the name directory has changed) and the script worked fine in the old file system and not the new. I'm trying to add the results from one with another but i'm... (4 Replies)
Hi All,
Im writing a shell script in which I want to get the folder names in one folder to be used in for loop.
I have used:
packsName=$(cd ~/packs/Acquisitions; ls -l| awk '{print $9}')
echo $packsName
o/p: opt temp user1 user2
ie. Im getting the output as a string.
But I want... (3 Replies)
I am fairly new to programming and trying to resolve this problem. I have the file like this.
CHROM POS REF ALT 10_sample.bam 11_sample.bam 12_sample.bam 13_sample.bam 14_sample.bam 15_sample.bam 16_sample.bam
tg93 77 T C T T T T T
tg93 79 ... (4 Replies)
I have a String class with a function that reads tokens using a delimiter.
For example
String sss = "6:8:12:16";
nfb = sss.nfields_b (':');
String tkb1 = sss.get_token_b (':');
String tkb2 = sss.get_token_b (':');
String tkb3 = sss.get_token_b (':');
String tkb4 =... (1 Reply)
Hi
I have xml file with multiple records and would like to extract records from xml with specific condition if specific tag is present extract entire row otherwise skip .
<logentry revision="21510">
<author>mantest</author>
<date>2015-02-27</date>
<QC_ID>334566</QC_ID>... (12 Replies)
Discussion started by: madankumar.t@hp
12 Replies
LEARN ABOUT NETBSD
strtok
STRTOK(3) BSD Library Functions Manual STRTOK(3)NAME
strtok, strtok_r -- string tokens
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#include <string.h>
char *
strtok(char * restrict str, const char * restrict sep);
char *
strtok_r(char *str, const char *sep, char **lasts);
DESCRIPTION
The strtok() function is used to isolate sequential tokens in a nul-terminated string, str. These tokens are separated in the string by at
least one of the characters in sep. The first time that strtok() is called, str should be specified; subsequent calls, wishing to obtain
further tokens from the same string, should pass a null pointer instead. The separator string, sep, must be supplied each time, and may
change between calls.
The strtok() function returns a pointer to the beginning of each subsequent token in the string, after replacing the separator character
itself with a NUL character. Separator characters at the beginning of the string or at the continuation point are skipped so that zero
length tokens are not returned. When no more tokens remain, a null pointer is returned.
The strtok_r() function implements the functionality of strtok() but is passed an additional argument, lasts, which points to a user-provided
pointer which is used by strtok_r() to store state which needs to be kept between calls to scan the same string; unlike strtok(), it is not
necessary to limit tokenizing to a single string at a time when using strtok_r().
EXAMPLES
The following will construct an array of pointers to each individual word in the string s:
#define MAXTOKENS 128
char s[512], *p, *tokens[MAXTOKENS];
char *last;
int i = 0;
snprintf(s, sizeof(s), "cat dog horse cow");
for ((p = strtok_r(s, " ", &last)); p;
(p = strtok_r(NULL, " ", &last)), i++) {
if (i < MAXTOKENS - 1)
tokens[i] = p;
}
tokens[i] = NULL;
That is, tokens[0] will point to "cat", tokens[1] will point to "dog", tokens[2] will point to "horse", and tokens[3] will point to "cow".
SEE ALSO index(3), memchr(3), rindex(3), strchr(3), strcspn(3), strpbrk(3), strrchr(3), strsep(3), strspn(3), strstr(3)STANDARDS
The strtok() function conforms to ANSI X3.159-1989 (``ANSI C89''). The strtok_r() function conforms to IEEE Std 1003.1c-1995 (``POSIX.1'').
BUGS
The System V strtok(), if handed a string containing only delimiter characters, will not alter the next starting point, so that a call to
strtok() with a different (or empty) delimiter string may return a non-NULL value. Since this implementation always alters the next starting
point, such a sequence of calls would always return NULL.
BSD August 11, 2002 BSD