The UNIX and Linux Forums  

Go Back   The UNIX and Linux Forums > Top Forums > Shell Programming and Scripting
Google UNIX.COM


Shell Programming and Scripting Post questions about KSH, CSH, SH, BASH, PERL, PHP, SED, AWK and OTHER shell scripts here.

More UNIX and Linux Forum Topics You Might Find Helpful
Thread Thread Starter Forum Replies Last Post
Help me for AWK URGENT readycpbala Shell Programming and Scripting 2 02-22-2007 09:03 AM
URGENT,URGENT- Need help tape drive installation sriny UNIX for Advanced & Expert Users 3 11-16-2006 11:43 AM
URGENT---URGENT--No OK PROMPt after RSC CONFIG sriny SUN Solaris 7 10-29-2006 07:06 AM
Urgent !! desiondarun UNIX for Dummies Questions & Answers 1 08-08-2006 05:49 AM
urgent 2 hamoudzz UNIX for Dummies Questions & Answers 1 03-03-2004 05:09 PM

Reply
 
Submit Tools LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 10-24-2007
Registered User
 

Join Date: Sep 2007
Posts: 55
Stumble this Post!
Unhappy Need Help Urgent

Hi Guys,
Need one quick help.
I have one file test.sh
#cat test.sh
<Abc>200712241314</Abc>

I need the output value in between <Abc> </Abc> mean to say "200712241314"

I am using cut command for that. But my problem is that test.sh file not same format. Some time it will have some whitespace from start.

Could you help me.

I want the ouput value in between <Abc> </Abc> in anywhere that file.

It is Urgent !!
Thanks
Sanjay
Reply With Quote
Forum Sponsor
  #2 (permalink)  
Old 10-24-2007
Bughunter Extraordinaire
 

Join Date: May 2005
Location: In the leftmost byte of /dev/kmem
Posts: 1,099
Stumble this Post!
man sed - urgently!!

I guess that you do not have multiple <Abc>..</Abc>-combinations on one line so that following line would be impossible:

Code:
 blabla  <Abc> value1 </Abc> blabla <Abc>    value2   </Abc> blabla
If this *is* the case you should start reading the sed-manpage even more urgently, as it is going to be a little more elaborate than the simple case replace "<spc>" "<tab>" by literal blanks and tabs:

Code:
sed 's/^.*<Abc> *\([^<spc><tab>][^<spc><tab>]*\) *<\/Abc>.*$/\1/' test.sh
This removes the whitespace too.

bakunin
Reply With Quote
  #3 (permalink)  
Old 10-25-2007
Yogesh Sawant's Avatar
Part Time Moderator and Full Time Dad
 

Join Date: Sep 2006
Location: Rossem, Tazenda
Posts: 767
Stumble this Post!
using Perl:
Code:
#!/usr/bin/perl
# extract_num.pl
while (<>) {
    print $1 if (m#^\s*<Abc>(\d+)</Abc>#);
}
Then run this script as:
Code:
perl extract_num.pl test.sh
Reply With Quote
  #4 (permalink)  
Old 10-25-2007
Registered User
 

Join Date: Sep 2006
Posts: 55
Stumble this Post!
Quote:
Originally Posted by bakunin View Post
man sed - urgently!!

I guess that you do not have multiple <Abc>..</Abc>-combinations on one line so that following line would be impossible:

Code:
 blabla  <Abc> value1 </Abc> blabla <Abc>    value2   </Abc> blabla
If this *is* the case you should start reading the sed-manpage even more urgently, as it is going to be a little more elaborate than the simple case replace "<spc>" "<tab>" by literal blanks and tabs:

Code:
sed 's/^.*<Abc> *\([^<spc><tab>][^<spc><tab>]*\) *<\/Abc>.*$/\1/' test.sh
This removes the whitespace too.

bakunin
Can you explain how this part works.......
([^<spc><tab>][^<spc><tab>]*\) & ".*$/\1" .

Thanks
Bishweshwar
Reply With Quote
  #5 (permalink)  
Old 10-28-2007
Registered User
 

Join Date: Jun 2007
Posts: 76
Stumble this Post!
Try This Out!!!!!!!!!!!!!!!!!!!!!!!!!


sed 's/\(<Abc>\)\(.*\)\(<\/Abc>\)/\2/' filename

Regards,
Anand
Reply With Quote
Google The UNIX and Linux Forums
Reply

Thread Tools
Display Modes




All times are GMT -7. The time now is 06:32 PM.


Powered by: vBulletin, Copyright ©2000 - 2006, Jelsoft Enterprises Limited.
The UNIX and Linux Forums Content Copyright ©1993-2008 The CEP Blog All Rights Reserved -Ad Management by RedTyger Visit The Global Fact Book

Content Relevant URLs by vBSEO 3.2.0