05-10-2011
grep sed and a loop
I have a requirement to search a log file that never rotates for certain values. If I find them I pipe them to a another file. To log file is constanyl being appened with new lines and never rotating Easy so far.
The problem is I dont want to pipe out matches already seen before. One thing I tried was to use sed to put a # at the beginning of each line as it is read. Then the grep would ignore lines starting with #
My problem is I can get it to just add # to the unread lines, it adds another to all lines so each time the log is read so the earliest entries have loads of * infront of them.
I was tryin gto get it to ignore liens with # and then to a for loop for any the new lines e.g. for any not starting with # search for the string and add # to the front. This way is would only add # to lines that dont have one.
Here i swhat I was working with but just cant get that loop to work on lines not starting with #
Any help would be a awesome.
grep -v '^#' test.log | grep "Can not load CRL"
This line ignores lines starting with # and greps the rest for "Can not load CRL"
sed 's/^/#/g' test.log > testnew.log
The line adds the # to the front and creates output file testnew.log I want it to only add # to lines without a # already
mv testnew.log test.log
This line renames\overwrites testnew.log and to test.log If anyone knows how i can write directly to the original file instead of having to write a new file and then overwrite the original would be great as well
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi ,
I am trying a script which takes user input userid . I am stuck how to check whether that is a valid user id or not in the audit log files. My code is :
cd $CCP_AUDIT
cat * > /export/home/$USR/l***/files
echo "UserId:\c"
read UserId
#Date Function
echo "DATE : \c"
read xxx
I... (7 Replies)
Discussion started by: gundu
7 Replies
2. UNIX for Dummies Questions & Answers
alist contain:
a
b
c
d
e
blist contain:
a
b
c
the code:
#!/usr/bin/ksh
cat blist | while read line
do
grep -V "$line" alist > data
done (8 Replies)
Discussion started by: bobo
8 Replies
3. Shell Programming and Scripting
I have a huge file and want to separate it into several subsets.
The file looks like:
C1 C2 C3 C4 ... (variable names)
1 ....
2 ....
3 ....
:
22 ....
23 ....
I want to separate the huge file using the column 1, which has numbers from 1 to 23 (but there are different amount of... (8 Replies)
Discussion started by: AMBER
8 Replies
4. Shell Programming and Scripting
I have a key file
$ cat klist
5 N:8855 CASA VERDE ROAD :32827 :ORLAND
5 N:585 MOLLY LANE :30189 :WOODST
5 N:320 NINA ROAD :32304 :TALLAH
and a data file, see example of the line below:
N:RT 15 & N 7TH STREET :17837 :U SAVE
I need to search by key (2nd field) from klist... (6 Replies)
Discussion started by: migurus
6 Replies
5. Shell Programming and Scripting
Hi all,
I have the below script to get input but i cannot get grep to work.
input1.txt
AAAAAAAAG
input2.txt
>gi|184009.1| LEAFY-like |AAAAAAAAGSGGGDHLPY
However, when i use grep -f input1.txt input2.txt
i cannot get any output matches (note that the match is underlined).
Is it... (8 Replies)
Discussion started by: turkishvan
8 Replies
6. Shell Programming and Scripting
So this is what I'm trying to do:
I have a file called registry.txt which has a list of registry entries I want to search for.
I have another file called inctrl.txt on which I want to perform the search on.
Here's the example contents of registry.txt
SOFTWARE\Microsoft\Security... (3 Replies)
Discussion started by: r4v3n
3 Replies
7. Red Hat
Hello everybody,
I have been searching it, but it seems I am unable to find the correct information, that s why I am asking you guys, hoping somebody get an idea.
Here is my problem :
I want a script to loop until a string is identified in a log file.
Here is the script :
#!/bin/sh... (5 Replies)
Discussion started by: guyiom
5 Replies
8. Homework & Coursework Questions
Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted!
1. The problem statement, all variables and given/known data:
I need to search through the users home directories for keywords, display them. The code listed below will show... (7 Replies)
Discussion started by: jcllns1
7 Replies
9. UNIX for Beginners Questions & Answers
Hello -
I am running a script that is outputting to a log. Let call it output.log
I would like to monitor that log until the line "Build Successful" is found.
I think I would need to use the grep command.
How would I do that in a loop?
Thanks
Marty (1 Reply)
Discussion started by: MSpeare
1 Replies
10. Shell Programming and Scripting
Hello,
I have built the following script to check if processes supplied by the argument are running or not.
#!/bin/bash
PROCLIST=$1
PROCESS="0"
ERROR_PROCS=""
IFS='+'
read -ra ADDR <<< "$PROCLIST"
for PROC in "${ADDR}"; do
if ; then
PROCESS=1
... (9 Replies)
Discussion started by: nms
9 Replies
LEARN ABOUT NETBSD
rcs2log
RCS2LOG(1) BSD General Commands Manual RCS2LOG(1)
NAME
rcs2log -- RCS to ChangeLog generator
SYNOPSIS
rcs2log [-c changelog] [-h hostname] [-i indent] [-l length] [-R] [-r option] [-t tabwidth] [-u login<TAB>fullname<TAB>mailaddr] [-v]
[--help] [--version] [file ...]
DESCRIPTION
The rcs2log utility generates a change log prefix from RCS files (perhaps in the CVS repository) and the ChangeLog (if any).
The options are as follows:
-c changelog
Output a change log prefix to changelog (default ChangeLog).
-h hostname
Use hostname in change log entries (default current host).
-i indent
Indent change log lines by indent spaces (default 8).
-l length
Try to limit log lines to length characters (default 79).
-R If no file(s) are given and RCS is used, recurse through working directory.
-r option
Pass option to subsidiary log command.
-t tabwidth
Tab stops are every tabwidth characters (default 8).
-u login<TAB>fullname<TAB>mailaddr
Assume login has fullname and mailaddr.
-v Append RCS revision to file names in log lines.
--help Output help.
--version
Output version number.
SEE ALSO
rcs(1), rcsintro(1), rlog(1), rcsfile(5)
AUTHORS
Paul Eggert <eggert@twinsun.com>
BUGS
Report bugs to <bug-gnu-emacs@gnu.org>.
BSD
February 15, 2003 BSD