Extraction of text using sed or awk command


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Extraction of text using sed or awk command
# 1  
Old 12-23-2009
Extraction of text using sed or awk command

Hi All,
I need to extract 543 from the command below :

Code:
[root@puiqtk06 ]# pvscan
  PV /dev/sdb1   VG vg0   lvm2 [543.88 GB / 896.00 MB free]
  Total: 1 [543.88 GB] / in use: 1 [543.88 GB] / in no VG: 0 [0   ]

I have the following command which does the job, but I think this could be achieved in a more simple way using sed or awk. Any help is appreciated.


Code:
pvscan | grep Total | tr -s " " | cut -d " " -f4 | tr -s "[" " " | cut -d "." -f1

# 2  
Old 12-23-2009
hope this helps:

Code:
pvscan | grep Total |sed 's/\(.*\)\(\[[0-9][0-9][0-9]\)\(.*\)/\2/g'

# 3  
Old 12-23-2009
or:
Code:
pvscan | awk -F '[[.]' '/Total/{print $2}'

# 4  
Old 12-23-2009
Using awk command I get the following error :

Code:
[root@puiqtk06 ]# pvscan | awk -F '[[.]' '/Total/{print $2}'
awk: fatal: Unmatched [ or [^: /[[.]/

Using sed , we are pretty close except that "[" also comes in the value.

Code:
[root@puiqtk06 ]# pvscan | grep Total |sed 's/\(.*\)\(\[[0-9][0-9][0-9]\)\(.*\)/\2/g'
[543
[root@puiqtk06 ]#

# 5  
Old 12-23-2009
Perhaps your awk likes the [ needs to be escaped:
Code:
pvscan | awk -F '[\[.]' '/Total/{print $2}'

or:
Code:
pvscan | sed -n '/Total/{s/[^[]*\[//;s/\..*//p}'

# 6  
Old 12-23-2009
ohh it should have been

Code:
 pvscan| grep Total|sed 's/\(.*\)\(\[\)\([0-9][0-9][0-9]\)\(.*\)/\3/g'

# 7  
Old 12-23-2009
Code:
line=$(pvscan|grep Total)
line=${line#*\[}
echo ${line%%.*}

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Help with awk or sed Command to Replace Text in Files

Hello Everyone, I have many files like so: file1.txt file2.txt file3.txt Within each file I have many lines of random text separated by commas like so: abcAAA,123,defAA,456777,ghiA,789 jklB,101,mnoBBB,11211,pqrB,13111 stuCC,415,vwxCCCC,161,yzaC,718 I am trying to use SED or AWK to... (4 Replies)
Discussion started by: D3U5X
4 Replies

2. Shell Programming and Scripting

Extraction problem with sed command

Hi All I am trying to remove the line having specific pattern from a file by using sed command I have the file named ODS_REP_SRCE_File.txt with content as: ... (1 Reply)
Discussion started by: Shilpi Gupta
1 Replies

3. Shell Programming and Scripting

sed and awk giving error ./sample.sh: line 13: sed: command not found

Hi, I am running a script sample.sh in bash environment .In the script i am using sed and awk commands which when executed individually from terminal they are getting executed normally but when i give these sed and awk commands in the script it is giving the below errors :- ./sample.sh: line... (12 Replies)
Discussion started by: satishmallidi
12 Replies

4. Shell Programming and Scripting

Text extraction

Dear All, I am trying to extract text from a file containing cron entries. cat /var/tmp/cron_backups/debmed_tmp < * * * * * /bell > * * * * * /belly what I am trying to do is create two text files containing all entries that begin with < and another text files containing entries with > .... (4 Replies)
Discussion started by: Junaid Subhani
4 Replies

5. Shell Programming and Scripting

sed text extraction between 2 patterns using variables

Hi everyone! I'm writting a function in .bashrc to extract some text from a file. The file looks like this: " random text Begin CG step 1 random text Begin CG step 2 ... Begin CG step 100 random text" For a given number, let's say 70, I want all the text between "Begin CG... (4 Replies)
Discussion started by: radudownload
4 Replies

6. Shell Programming and Scripting

awk - horizontal and vertical text extraction

Hi, I need some help in getting extracting the specific horizontal and vertical texts in a single line. I am trying to extract few of the parameters from a config file. Your help is appreciated. Desired Output ---------------- Pool members members ... (4 Replies)
Discussion started by: pratheeshp
4 Replies

7. UNIX for Dummies Questions & Answers

awk/sed match and extraction

Hi, I have a file like this- aa 12 23 34 aa 21 34 56 aa 78 45 56 I want to print out only the lines after the last aa. How do I do this? I tried using grep -A and sed -n, but both didnt work as I wanted to. Could someone help me out please.. (3 Replies)
Discussion started by: jamie_123
3 Replies

8. UNIX for Dummies Questions & Answers

String extraction from a text file

The following script code works great for extracting 'postmaster' from a line of text stored in a variable named string: string="PenaltyError:=554 5.7.1 Error, send your mail to postmaster@LOCALDOMAIN" stuff=$( echo $string | cut -d@ -f1 | awk '{ print $NF }' ) echo $stuff However, I need to be... (9 Replies)
Discussion started by: cleanden
9 Replies

9. Shell Programming and Scripting

extraction of perfect text from file.

Hi All, I have a file of the following format. <?xml version='1.0' encoding='utf-8'?> <tomcat-users> <role rolename="tomcat"/> <role rolename="role1"/> <role rolename="manager"/> <role rolename="admin"/> <user username="tomcat" password="tomcat" roles="tomcat"/> <user... (5 Replies)
Discussion started by: nua7
5 Replies

10. Shell Programming and Scripting

Sed/awk gods, I need your Help! Fancy log extraction

Hi! I'm trying to find a way to extract a certain amount of lines from a log file. This would allow me to "follow" a web user through our log files. Here is a sample fake log file to explain what i want to accomplish : BEGIN REQUEST sessionID=123456 boatload of lines for thread-1 detailing... (8 Replies)
Discussion started by: gnagus
8 Replies
Login or Register to Ask a Question