10-20-2007
String matching question
Folks;
I need help with this:
I have a text file has a lot of lines, each line is a string consists of tree of directries, i would like to ignore any lines starting with "#" then grep an exact match of a string, then if i find a matching string with a child directory print it out. Below is the details:
The text file looks something like:
/new/tree/xxx/yyy/zzz
#/new/free/opt/yyy
/aaa/bbb/ccc/
/aaa/bbb/ccc/ddd/eee
/aaa/bbb/ccc/ddd
Now, i want first to ignore any line starts with "#"
Second, i want to do the following for EACH line starting with the first:
- look for exact string matching that line
then
1. if the matching string has any extra children, Ignore it. "directories under the string"
2. If there's no child directory under the string, print out the string then add this phrase to it "/hello/every/one" and redirect the output to a new text file.
This process should do that for each line in the original text file.
Thanks in advance
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
how to match an alphanumeric string like the following.
i have to do like the following.
if the input line is
the data is {clock_91b}
i have to replace that with
the string was ("clock_91b")
i tried like
$line =~ s/the data is\s+\{(+)\}/the string was \(\"$1\"\)/
which... (4 Replies)
Discussion started by: sskb
4 Replies
2. Shell Programming and Scripting
Hi guys, I hope you can help me with my problem.
I have a text file that contains lines like this:
78 ANGELO -809.05
79 ANGELO2 -5,000.06
I need to find all occurences of amounts that are negative and replace them with x's
78 ANGELO xxxxxxx
79... (4 Replies)
Discussion started by: amangeles
4 Replies
3. Shell Programming and Scripting
for a certain directory, I want to grep a particular file called ABCD so what I do is
ls /my/dir | grep -i "ABCD" | awk '{print $9}'
however, there is also this file called ABCDEFG, the above command would reurn both file when I only want ABCD, please help! (3 Replies)
Discussion started by: mpang_
3 Replies
4. UNIX for Dummies Questions & Answers
Hello,
i have a program where i have to get a character from the user and check it against the word i have and then replace the character in a blank at the same position it is in the word. (7 Replies)
Discussion started by: nehaquick
7 Replies
5. Shell Programming and Scripting
I have a requirement of shell script where i need to read the File name i.e ls -t | head -1 and Match that Filename with some delimited values which are in a separate File.
For Example i am reading the File name i.e (ls -t | head -1) after that i need to read one more sequential file which... (2 Replies)
Discussion started by: dsdev_123
2 Replies
6. Shell Programming and Scripting
I am new to shell scripting !!!!!!!!!!.ANY HELP WOULD BE APPRECIATE :-
i want to write a script that will check the log for string:
waiting for seconds
for this I am using :-
tail -10 log.20101004 | tail -1
and grep the "string" but when matching error is coming ,see script below:-
i... (1 Reply)
Discussion started by: abhigrkist
1 Replies
7. Shell Programming and Scripting
I have a string like ab or abc of whatever length. But i want to know whether another string ( for example, abcfghijkl, OR a<space> bcfghijkl ab<space> cfghijkl OR a<space>bcfghijkl OR ab<space> c<space> fghijkl ) starts with ab or abc... space might existing on the longer string... If so, i... (4 Replies)
Discussion started by: nram_krishna@ya
4 Replies
8. Shell Programming and Scripting
Hi,
i want to know how to compare string of file with input string
im trying following code:
file_no=`paste -s -d "||||\n" a.txt | cut -c 1`
#it will return collection number from file
echo "enter number"
read " curr_no"
if ; then
echo " current number already present"
fi
... (4 Replies)
Discussion started by: a_smith
4 Replies
9. UNIX for Dummies Questions & Answers
Hello all,
i am trying to match a string and based on that proceed with my script or error out...
i have a file called /tmp/sta.log that will be populated by oracle's spooling..it can
have a output of either 2 of the below (OPEN or errors/ORACLE not avaiable)
$ cat /tmp/sta.log
OPEN
$
$... (2 Replies)
Discussion started by: abdul.irfan2
2 Replies
10. UNIX for Dummies Questions & Answers
I have been thinking how to address this particular task but is way beyond my knowledge.
I have a reference sequence, something like this:
>Reference
AGAGAGACCTGGAGAGAGAGTGACGATGAGCAGTGACGATGACGTACGATAGCAGTAGACGCA
and a input.txt file with thousand of short sequences, something like this
... (4 Replies)
Discussion started by: Xterra
4 Replies
LEARN ABOUT XFREE86
strtok_r
STRTOK(3) Linux Programmer's Manual STRTOK(3)
NAME
strtok, strtok_r - extract tokens from strings
SYNOPSIS
#include <string.h>
char *strtok(char *str, const char *delim);
char *strtok_r(char *str, const char *delim, char **saveptr);
Feature Test Macro Requirements for glibc (see feature_test_macros(7)):
strtok_r(): _POSIX_C_SOURCE
|| /* Glibc versions <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
DESCRIPTION
The strtok() function breaks a string into a sequence of zero or more nonempty tokens. On the first call to strtok(), the string to be
parsed should be specified in str. In each subsequent call that should parse the same string, str must be NULL.
The delim argument specifies a set of bytes that delimit the tokens in the parsed string. The caller may specify different strings in
delim in successive calls that parse the same string.
Each call to strtok() returns a pointer to a null-terminated string containing the next token. This string does not include the delimiting
byte. If no more tokens are found, strtok() returns NULL.
A sequence of calls to strtok() that operate on the same string maintains a pointer that determines the point from which to start searching
for the next token. The first call to strtok() sets this pointer to point to the first byte of the string. The start of the next token is
determined by scanning forward for the next nondelimiter byte in str. If such a byte is found, it is taken as the start of the next token.
If no such byte is found, then there are no more tokens, and strtok() returns NULL. (A string that is empty or that contains only delim-
iters will thus cause strtok() to return NULL on the first call.)
The end of each token is found by scanning forward until either the next delimiter byte is found or until the terminating null byte ('