LinuxQuestions.org
Visit Jeremy's Blog.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Newbie
User Name
Password
Linux - Newbie This Linux forum is for members that are new to Linux.
Just starting out and have a question? If it is not in the man pages or the how-to's this is the place!

Notices


Reply
  Search this Thread
Old 04-23-2012, 12:27 AM   #1
bal_nair1
Member
 
Registered: Apr 2012
Location: Bangalore,India
Posts: 41

Rep: Reputation: Disabled
Unhappy How do I program in shell script for write a word if it finds another word


I have a file named medpre.msg.log
Script should search for a word 'degenerated'
If it finds the word 'degenerated' , then it should write 'ECHT' on already existing file Mcheck.prot

How should I write the program, please help me . I am new to shell scripting


Thank you in advance......
 
Old 04-23-2012, 01:03 AM   #2
chrism01
LQ Guru
 
Registered: Aug 2004
Location: Sydney
Distribution: Rocky 9.2
Posts: 18,362

Rep: Reputation: 2751Reputation: 2751Reputation: 2751Reputation: 2751Reputation: 2751Reputation: 2751Reputation: 2751Reputation: 2751Reputation: 2751Reputation: 2751Reputation: 2751
Please show us what you have done so far and we'll point you in the right direction.
In the meantime, here are some useful links
http://rute.2038bug.com/index.html.gz
http://tldp.org/LDP/Bash-Beginners-G...tml/index.html
http://www.tldp.org/LDP/abs/html/

Have a look at the grep cmd http://linux.die.net/man/1/grep
 
Old 04-23-2012, 01:19 AM   #3
bal_nair1
Member
 
Registered: Apr 2012
Location: Bangalore,India
Posts: 41

Original Poster
Rep: Reputation: Disabled
Sorry I have not done anything so far , I need help extensively to do this program..


I have a file medpre.msg.log in the path /home/balnair/.medina/medpre.msg.log

and another file in the path /home/transfer/Mcheck.prot

script should search for the word 'degenerated' in medpre.msg.log

If it finds it should append 'ECHT' to file Mcheck.prot



So how can be done
log_file = " /home/balnair/.medina/medpre.msg.log "
work = "/home/transfer/Mcheck.prot"


if [ !"degenerated" = $log_file ] # please correct it
then
echo " ECHT " >>$work
 
Old 04-23-2012, 01:45 AM   #4
pan64
LQ Addict
 
Registered: Mar 2012
Location: Hungary
Distribution: debian/ubuntu/suse ...
Posts: 21,945

Rep: Reputation: 7325Reputation: 7325Reputation: 7325Reputation: 7325Reputation: 7325Reputation: 7325Reputation: 7325Reputation: 7325Reputation: 7325Reputation: 7325Reputation: 7325
see the man page of grep, it will help you
 
Old 04-23-2012, 02:07 AM   #5
bal_nair1
Member
 
Registered: Apr 2012
Location: Bangalore,India
Posts: 41

Original Poster
Rep: Reputation: Disabled
ok i have put

find = " grep degenerated $logfile | wc -l "

if [ $find >1]

then
echo " ECHT " >> $work


but it doesnt work.......

Last edited by bal_nair1; 04-23-2012 at 02:09 AM.
 
Old 04-23-2012, 02:14 AM   #6
druuna
LQ Veteran
 
Registered: Sep 2003
Posts: 10,532
Blog Entries: 7

Rep: Reputation: 2405Reputation: 2405Reputation: 2405Reputation: 2405Reputation: 2405Reputation: 2405Reputation: 2405Reputation: 2405Reputation: 2405Reputation: 2405Reputation: 2405
Hi,

Give this a try:
Code:
if [ $( grep "degenerated" "$logfile" ) ]
then
  echo "ECHT" >> "$work"
fi
Hope this helps.
 
Old 04-23-2012, 02:16 AM   #7
grail
LQ Guru
 
Registered: Sep 2009
Location: Perth
Distribution: Manjaro
Posts: 10,008

Rep: Reputation: 3193Reputation: 3193Reputation: 3193Reputation: 3193Reputation: 3193Reputation: 3193Reputation: 3193Reputation: 3193Reputation: 3193Reputation: 3193Reputation: 3193
Explain what is not working? Also, what shell are you using?
 
Old 04-23-2012, 02:43 AM   #8
pan64
LQ Addict
 
Registered: Mar 2012
Location: Hungary
Distribution: debian/ubuntu/suse ...
Posts: 21,945

Rep: Reputation: 7325Reputation: 7325Reputation: 7325Reputation: 7325Reputation: 7325Reputation: 7325Reputation: 7325Reputation: 7325Reputation: 7325Reputation: 7325Reputation: 7325
more simple: grep degenerated $logfile && echo ECHT >> "$work"

---------- Post added 23rd Apr 2012 at 09:44 ----------

Quote:
Originally Posted by grail View Post
Explain what is not working? Also, what shell are you using?
he should add a space before ]
 
Old 04-23-2012, 06:04 AM   #9
grail
LQ Guru
 
Registered: Sep 2009
Location: Perth
Distribution: Manjaro
Posts: 10,008

Rep: Reputation: 3193Reputation: 3193Reputation: 3193Reputation: 3193Reputation: 3193Reputation: 3193Reputation: 3193Reputation: 3193Reputation: 3193Reputation: 3193Reputation: 3193
Quote:
he should add a space before ]
So that is the only error you see? Remember, just telling someone the answer won't really help them much for next time.
 
Old 04-23-2012, 06:28 AM   #10
pan64
LQ Addict
 
Registered: Mar 2012
Location: Hungary
Distribution: debian/ubuntu/suse ...
Posts: 21,945

Rep: Reputation: 7325Reputation: 7325Reputation: 7325Reputation: 7325Reputation: 7325Reputation: 7325Reputation: 7325Reputation: 7325Reputation: 7325Reputation: 7325Reputation: 7325
Quote:
Originally Posted by grail View Post
So that is the only error you see? Remember, just telling someone the answer won't really help them much for next time.
If someone wants to learn linux he would better solve such problems himself. So yes, I will show him a starting point. If there were other errors he should find them easily there are only 5 lines of codes to check.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] sed does not remove word done from within shell script dnoob Programming 8 02-11-2011 03:51 PM
bash shell script read file word by word part 2 justina Programming 7 01-25-2011 01:19 PM
[SOLVED] bash shell script read file word by word. justina Programming 15 01-22-2011 10:12 AM
How can i read two files word by word at a time using any loop by shell script? vaibhavs17 Programming 16 03-19-2010 03:48 AM
word by word comparison in two files using loop in shell script vaibhavs17 Programming 2 03-05-2010 07:41 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Newbie

All times are GMT -5. The time now is 03:11 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration