Joining three lines with comma separation


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Joining three lines with comma separation
# 1  
Old 04-28-2006
Joining three lines with comma separation

I have a file that looks like this:

G. KRESSLAR
9618 W. APPALOOSA DRIVE
SUN CITY, AZ 85373
SHIRLEY ALLEN
7272 W. VIA MONTOYA DRIVE
GLENDALE, AZ 85310
LOUIS VALDEZ
244441 N. 86TH AVENUE
PEORIA, AZ 85383
DONNA NEWBON
3231 W. DENTON #D
PHOENIX, AZ 85017
SARAH WILSON
6534 W. PALO VERDE
GLENDALE, AZ 85302
W. GRISAMORE
10017 W. PALMER
SUN CITY, AZ 85351


What I need to do is join each set of three lines, separated by a comma, so that it looks like this:

G. KRESSLAR, 9618 W. APPALOOSA DRIVE, SUN CITY, AZ 85373
SHIRLEY ALLEN, 7272 W. VIA MONTOYA DRIVE, GLENDALE, AZ 85310
LOUIS VALDEZ, 244441 N. 86TH AVENUE, PEORIA, AZ 85383
DONNA NEWBON, 3231 W. DENTON #D, PHOENIX, AZ 85017
SARAH WILSON, 6534 W. PALO VERDE, GLENDALE, AZ 85302
W. GRISAMORE, 10017 W. PALMER, SUN CITY, AZ 85351

Is there a simple sed or awk solution to this?

Thanks in advance for your help.
# 2  
Old 04-28-2006
I think I have it

I tried this and it appears to work.

sed 'N;N;s/\n/, /g' < in-file > new-file

Am checking now.
# 3  
Old 04-28-2006
That worked, but?

I also need to include double quotes around each input line so that the resulting file looks like this:

"G. KRESSLAR", "9618 W. APPALOOSA DRIVE", "SUN CITY, AZ 85373"
"SHIRLEY ALLEN", "7272 W. VIA MONTOYA DRIVE", "GLENDALE, AZ 85310"
"LOUIS VALDEZ", "244441 N. 86TH AVENUE", "PEORIA, AZ 85383"
"DONNA NEWBON", "3231 W. DENTON #D, "PHOENIX, AZ 85017"
"SARAH WILSON", "6534 W. PALO VERDE", "GLENDALE, AZ 85302"
"W. GRISAMORE", "10017 W. PALMER", "SUN CITY, AZ 85351"

So far I'm stumped on that one. Any ideas?
# 4  
Old 04-28-2006
It's not elegant, but it works

Ok, I tried this and have what I need.

sed 's/^/"/' < in-file | sed 's/$/"/' | sed 'N;N;s/\n/, /g' > new-file


Smilie
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Sum up formatted numbers with comma separation

I need to sum up the values in field nr 5 in a data file that contains some file listing. The 5th field denotes the size of each file and following are some sample values. 1,775,947,633 4,738 7,300 16,610 15,279 0 0 I tried the following code in a shell script. awk '{sum+=$5} END{print... (4 Replies)
Discussion started by: krishmaths
4 Replies

2. Shell Programming and Scripting

Joining broken lines and removing empty lines

Hi - I have req to join broken lines and remove empty lines but should NOT be in one line. It has to be as is line by line. The challenge here is there is no end of line/start of line char. thanks in advance Source:- 2003-04-34024|04-10-2003|Claims|Claim|01-13-2003|Air Bag:Driver;... (7 Replies)
Discussion started by: Jackceasar123
7 Replies

3. Shell Programming and Scripting

Joining lines in different way

Hi all, I'm excited to the part of unix.com forum, and noob to it. I have an query, where I have an file and it contains data like this use thread when posting do no I was expecting the result as use thread thread when when posting posting do do no use thread when thread when... (6 Replies)
Discussion started by: Jose Nirmal
6 Replies

4. Shell Programming and Scripting

Joining lines in a file - help!

I'm looking for a way to join lines in a file; e.,g consider the following R|This is line 1 R|This is line 2 R|This is line 3 R|This is line 4 R|This is line 5 what i want to end up with is R|This is line 1 R|This is line 2 R|This is line 3 R|This is line 4 R|This is line 5 so... (15 Replies)
Discussion started by: Storms
15 Replies

5. Shell Programming and Scripting

pattern matching lines using the date, and then joining the lines

Hi Guys, Was trying to attempt the below using awk and sed, have no luck so far, so any help would be appreciated. Current Text File: The first line has got an "\n", and the second line has got spaces/tabs then the word and "\n" TIME SERVER/CLIENT TEXT... (6 Replies)
Discussion started by: eo29
6 Replies

6. Shell Programming and Scripting

Need help joining lines

Hi All, I need the command to join 2 lines into one. I found lots of threads but none give me the sollution. Probably because unix scripting is one of my best features ;) I got a logfile where line 2 needs to be joined with line 1, lines 4 needs to be joined with line 3 etc If you need... (16 Replies)
Discussion started by: rene21976
16 Replies

7. Shell Programming and Scripting

joining two lines

Hi , I want to join two lines in a file, where the second line contain query string. if it doesn't contain that string i don't want to join e.g. Input file is as following: name fame game none none none name fame game cat eat mice I need output file as name fame game none none... (2 Replies)
Discussion started by: ashrafonics
2 Replies

8. UNIX for Dummies Questions & Answers

Conditionally joining lines in vi

I've done this before but I can't remember how. Too long away from vi. I want to do a search are replace, but I want the replace to be a join. Example see spot run see spot walk see spot run fast see spot hop %s/run$/<somehow perform a join with the next line>/g so the results... (0 Replies)
Discussion started by: ifermon
0 Replies

9. Shell Programming and Scripting

Joining 3 lines at a time

Hi, I have a file which has the contents as below : 07:38:36 EST date 20041117 07:39:06 EST 07:00:29 EDT date 20050504 07:25:16 EDT 07:00:40 EDT date 20050505 07:23:12 EDT I need to delete the new line character from all lines except 3rd,6th,9th etc. lines so that i get the output... (14 Replies)
Discussion started by: Sabari Nath S
14 Replies

10. Shell Programming and Scripting

Joining 2 lines in a file together

Hi guys, I've got a log file which has entries that look like this: ------------------------------------------------------------------------------- 06/08/04 07:57:57 AMQ9002: Channel program started. EXPLANATION: Channel program 'INSCCPQ1.HSMTSPQ1' started. ACTION: None. ... (3 Replies)
Discussion started by: m223464
3 Replies
Login or Register to Ask a Question