Easy sed question?


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Easy sed question?
# 1  
Old 06-19-2007
Easy sed question?

I have a line like:

"Jun 19 12:56:22 routername 45454:"

I want to keep all information except the seconds of the time. I tried:

Code:
sed 's/..:..:../..:../g'

but apparently I'm on the wrong track, because although that matches on the time, it replaces it with the literal ..:..

How can I retain the hours and minutes?
# 2  
Old 06-19-2007
Code:
sed 's/\(.*:\).. \(.*\)/\1 \2/'

# 3  
Old 06-19-2007
Quote:
Originally Posted by Shell_Life
Code:
sed 's/\(.*:\).. \(.*\)/\1 \2/'

Thanks, as always. Let me try to walk through it and please correct me where I'm wrong.

1.) substitute
2.) group of any # of characters before a :
3.) 2 more characters (im a bit confused on the space)
4.) any grouping of characters?
5.) keep fields 1 and 2?

eh, little more confused on it than I thought... any help would be appriciated. Also, it's keeping the second : making it look like 12:57: .. any way to avoid that?
# 4  
Old 06-19-2007
Earnstaf,
You are right about the "s" command sequence.
The space is to catch the space after the second.
If it is not there, it may get confused with the other ":".
I thought you just want to remove the number of seconds.
If you want to also remove the ":" before it:
Code:
sed 's/\(.*\):.. \(.*\)/\1 \2/'

# 5  
Old 06-19-2007
Thanks ... and I'll read up more on the backreferences (\1, \2, \3 ...) ...
# 6  
Old 06-19-2007
Earnstaf,
The "\n" (ie \1, \2, \3) is pattern substitution.
First you must save it as: \(RE\)
Where RE is Regular Expression.
After you saved it, you just use it again as substitution:
\1 for the first saved.
\2 for the second saved.
\n for the nth saved.
# 7  
Old 06-19-2007
Ahhh got it...

thanks.
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

awk easy question

So, I have the following code: cat testfile.txt | awk -F, '{ print $1" "$2" "$3" "$4" "$5 }' | read DOC ORG NAME echo "$DOC" echo "$ORG" echo "$NAME" My testfile.txt looks something like the following: Document Type,Project Number,Org ID,Invoice Number It will eventually be more... (14 Replies)
Discussion started by: Parrakarry
14 Replies

2. UNIX for Dummies Questions & Answers

Easy Grep Question

This seems like an easy question, but I can't find an answer already posted. I want a command to return all of the lines in a file containing exactly a string I tried grep -x "372701" x.txt but this did not return anything I am just trying to search a file for lines which contain... (4 Replies)
Discussion started by: jgrosecl
4 Replies

3. Shell Programming and Scripting

Easy cat question

I am having problems getting a list of filenames that I want from a directory. example: I have 3 files - filename.xxx.20110505.123030 filename.yyy.20110505.123030 filename.zzz.20110505.123030 There may be multiple xxx,... (3 Replies)
Discussion started by: Drenhead
3 Replies

4. Shell Programming and Scripting

Easy unix/sed question that I could have done 10 years ago!

Hi all and greetings from Ireland! I have not used much unix or awk/sed in years and have forgotten a lot. Easy enough query tho. I am cleansing/fixing 10,000 postal addresses using global replacements. I have 2 pipe delimited files , one is basically a spell checker for geographical... (4 Replies)
Discussion started by: dewsbury
4 Replies

5. UNIX for Dummies Questions & Answers

easy question

Hi everybody: Could anybody tell me if I have several files which each one it has this pattern name: name1.dat name2.dat name3.dat name4.dat name10.dat name11.dat name30.dat If I would like create one like: name_total.dat If I do: paste name*.dat > name_total.dat (15 Replies)
Discussion started by: tonet
15 Replies

6. Shell Programming and Scripting

Hopefully an Easy Question

I have a file name in this format ABC_WIRE_TRANS_YYYYMMDD_00.DAT I need to cut out the _00 out of the file name everytime. It could be _00, _01,_02, etc .... How do I cut it out to look as follows? ABC_WIRE_TRANS_YYYYMMDD.DAT (6 Replies)
Discussion started by: lesstjm
6 Replies

7. Shell Programming and Scripting

A easy question.

this is the simple question, please help me! the question is: how to send exactly 50 ICMP Echo request packets with 500 bytes of payload to 202.139.129.221? I tried to use ping -F 500 202.139.129.221, but it didn't work. Thanks! (6 Replies)
Discussion started by: kikikaka
6 Replies

8. UNIX for Dummies Questions & Answers

Another easy question

Hello Again, Ok guys. Thanks again for your help last time but I am in need of your experience again. I wrote this script: #!/bin/sh # List either files or directories in individual accounts # using 1, 2 or 3 with invalid case $1 in echo select 1 to see the FILES in your... (3 Replies)
Discussion started by: catbad
3 Replies

9. UNIX for Dummies Questions & Answers

easy question

I know the Sun Solaries versions are ( 2.3 , 2.4 , 2.5 ... 7 , 8 ) . But some times I see sun os v5.x what does it mean ?? also what is the last new machine for sun and what are its details specifications . Thanks (3 Replies)
Discussion started by: tamemi
3 Replies

10. UNIX for Dummies Questions & Answers

Easy question

Hi, Simple question. How do I convert a unix text file to a dos text file? Thanks Helen (4 Replies)
Discussion started by: Bab00shka
4 Replies
Login or Register to Ask a Question