posner
June 28, 2010, 7:27pm
1
Hi All
I have the data as
id-number 01
name-id x0 input-id x0 output-id x0
name-id x0 input-id x0 output-id x0
name-id x0 input-id x0 output-id x0
id-number 02
name-id x0 input-id x0 output-id x0
name-id x0 input-id x0 output-id x0
name-id x0 input-id x0 output-id x0
.
.
I want the out put as
id-number 01 name-id x0 input-id x0 output-id x0
id-number 01 name-id x0 input-id x0 output-id x0
id-number 01 name-id x0 input-id x0 output-id x0
id-number 02 name-id x0 input-id x0 output-id x0
id-number 02 name-id x0 input-id x0 output-id x0
id-number 02 name-id x0 input-id x0 output-id x0
i want this using awk/sed
we can delimit the file with text "id-number"
Thanks
Welcome to the forum. Here is one possibility:
awk '/id-number/{h=$0" ";next} NF{printf h}1' infile
1 Like
posner
June 28, 2010, 10:09pm
3
Thanks dude Scrutinizer
ur script worked perfect
i forgot to some information in the post like
the data can also as
id-number 01
name-id x0 input-id x0 output-id x0
name-id x0 input-id x0 output-id x0
name-id x0 input-id x0 output-id x0
id-number 02
name-id x0 input-id x0 output-id x0
name-id x0 input-id x0 output-id x0
name-id x0 input-id x0 output-id x0
id-number 03
id-number 04
name-id x0 input-id x0 output-id x0
name-id x0 input-id x0 output-id x0
.
.
id-number 03 doesn't have any info for itself but it should not be deleted the
the output must be like this
id-number 01 name-id x0 input-id x0 output-id x0
id-number 01 name-id x0 input-id x0 output-id x0
id-number 01 name-id x0 input-id x0 output-id x0
id-number 02 name-id x0 input-id x0 output-id x0
id-number 02 name-id x0 input-id x0 output-id x0
id-number 02 name-id x0 input-id x0 output-id x0
id-number 03
id-number 04 name-id x0 input-id x0 output-id x0
id-number 04 name-id x0 input-id x0 output-id x0
thanks
Hi
awk '/id-number/{h=$0" ";i=0;next} NF{printf h;print;i++;next;}{if (i==0) {printf h;print;}}1' infile
Guru.
1 Like
posner
June 29, 2010, 10:54am
5
wonderful GURU *****
Thanks