![]() |
|
|
|
|
|||||||
| Forums | Portal | Register | Forum Rules | FAQ | Contribute | Members List | Arcade | Search | Today's Posts | Mark Forums Read |
| Shell Programming and Scripting Post questions about KSH, CSH, SH, BASH, PERL, PHP, SED, AWK and OTHER shell scripts here. |
|
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| make multiple line containing a pattern into single line | VTAWKVT | Shell Programming and Scripting | 13 | 15 Hours Ago 03:40 PM |
| AWK - if last line/record do something | PacificWonder | Shell Programming and Scripting | 3 | 06-05-2008 08:13 PM |
| Multi-line output to single line | LinuxRacr | Shell Programming and Scripting | 7 | 02-26-2008 07:05 AM |
| Create two line from single line in shell | unishiva | Shell Programming and Scripting | 2 | 11-02-2007 09:28 PM |
| how to extract last line in record | bjorb | Shell Programming and Scripting | 7 | 10-17-2005 11:12 PM |
|
|
Submit Tools | LinkBack | Thread Tools | Search this Thread | Display Modes |
|
#1
|
|||
|
|||
|
transforming a multiline record to single line
Hi All
I have a file like this <LText>gvsvdkag<LREC>bdjvdj</LREC>nididyvv</LText> <LText>gvsvdkag<LREC>bdj vdj</LREC>nididyvv</LText> <LText>gvsvdkag<LREC>b djvdj</LREC>nididyvv</LText> <LText>gvsvdkag<LREC>bdjvdj</LREC>nididyvv</LText> How will i change the file to <LText>gvsvdkag<LREC>bdjvdj</LREC>nididyvv</LText> <LText>gvsvdkag<LREC>bdjvdj</LREC>nididyvv</LText> <LText>gvsvdkag<LREC>bdjvdj</LREC>nididyvv</LText> <LText>gvsvdkag<LREC>bdjvdj</LREC>nididyvv</LText> Please help this is urgent!!! |
| Forum Sponsor | ||
|
|
|
#2
|
||||
|
||||
|
$ cat xmltype.txt
<LText>gvsvdkag<LREC>bdjvdj</LREC>nididyvv</LText> <LText>gvsvdkag<LREC>bdj vdj</LREC>nididyvv</LText> <LText>gvsvdkag<LREC>b djvdj</LREC>nididyvv</LText> <LText>gvsvdkag<LREC>bdjvdj</LREC>nididyvv</LText> $ awk '{ if($0~/>$/) ORS="\n"; else ORS=""; print}' xmltype.txt <LText>gvsvdkag<LREC>bdjvdj</LREC>nididyvv</LText> <LText>gvsvdkag<LREC>bdjvdj</LREC>nididyvv</LText> <LText>gvsvdkag<LREC>bdjvdj</LREC>nididyvv</LText> <LText>gvsvdkag<LREC>bdjvdj</LREC>nididyvv</LText> //Jadu |
|
#3
|
|||
|
|||
|
Code:
sed -n '/[>]$/p;/[^>]$/{N;s/\n//;p}' file
|
|
#4
|
||||
|
||||
|
Different syntax:
[gawk, nawk and /usr/xpg4/bin/awk on Solaris] Code:
awk '(ORS=/<\/LText>/?"\n":"")||1' data Code:
awk '{x=x$0}/<\/LText>/{print x;x=""}' data
|
|
#5
|
|||
|
|||
|
[gawk, nawk and /usr/xpg4/bin/awk on Solaris]
Code:
awk '(ORS=/<\/LText>/?"\n":"")||1' data Code:
awk '{x=x$0}/<\/LText>/{print x;x=""}' data
It says awk: record `<L:RECORD><L:EPOCH>1...' too long Is there any solution for this |
|
#6
|
||||
|
||||
|
Quote:
What OS? Solaris? (if yes, did you try nawk?) |
|
#7
|
|||
|
|||
| Google The UNIX and Linux Forums |