Sponsored Content
Top Forums UNIX for Dummies Questions & Answers delete newline character between html tags Post 302170710 by cfajohnson on Tuesday 26th of February 2008 01:51:47 PM
Old 02-26-2008
Quote:
Originally Posted by girish312
Hi,
I have learned some of the Unix commands a way back and not sure of how to code them when needed in certain way, especially sed command. Here is my situation. I have an xml file with several tags. most of the tags start on the same line and end on the same line. However, data for some tags span into mulitple lines. I would like to bring back that particular tag into one line removing all new lines between them.

Here is an example:
<Report>
<Project>
<Proj_Name>ABC Enhancement</Proj_Name>
<Proj_Type>Mechanical</Proj_Type>
<Proj_Description>Project started on 01/03/2006.
However, it is running behind due to unavailable
Resources</Proj_Description>
<Proj_Hours>123.00</Proj_Hours.
</Project>
<Report>

The above is a sample data. I am looking to remove new line characters only from the lines that spans into multiple lines. Herea is how it should appear after removing new lines.

<Report>
<Project>
<Proj_Name>ABC Enhancement</Proj_Name>
<Proj_Type>Mechanical</Proj_Type>
<Proj_Description>Project started on so and so date.... </Proj_Description>
<Proj_Hours>123.00</Proj_Hours.
</Project>
<Report>

This may need a little tweaking:
Code:
awk '
NR>1 && /^</ { printf "\n" }
{ printf "%s ", $0 }
END { printf "\n" }
' "$FILE"

 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

How can I replace newline character?

Hi, I am trying to write a script to prepare some text for use as web content. What is happening is that all the newlines in the textfile are ignored, so I want to be able to replace/add a few characters so that for a file containg: This is line 1. This is line two. This is line four.... (1 Reply)
Discussion started by: ghoti
1 Replies

2. UNIX for Dummies Questions & Answers

newline character

hi, I want to print the below lines "Message from bac logistics The Confirmation File has not been received." When i give like this in the code "Message from bac logistics\n The Confirmation File has not been received." It is giving only Message from bac logistics\n The... (9 Replies)
Discussion started by: trichyselva
9 Replies

3. UNIX for Dummies Questions & Answers

echo without newline character

hi, I have a for loop where in I write some file name to another file. I want to write all the filenames to another without any newlines. how can i avoid getting new lines with echo? Thanks, Srilaxmi (2 Replies)
Discussion started by: srilaxmi
2 Replies

4. UNIX for Dummies Questions & Answers

Delete the line started with nondigit or newline character

i want to delete the line which is not started with numeric in vim. vim temp.txt Volume in drive D is DATA Volume Serial Number is 8C52-2055 Directory of D:\data\notes 02/16/2010 03:09 PM <DIR> . 02/16/2010 03:09 PM <DIR> .. 09/11/1999 03:03 AM ... (5 Replies)
Discussion started by: Manabhanjan
5 Replies

5. Shell Programming and Scripting

Why SED can't see the last newline character?

Removed. My question does not make sense. and SED does see the last newline character. But I still have a question: How to remove the last newline character(the newline character at the end of last line) using SED? ---------- Post updated 05-01-11 at 10:51 AM ---------- Previous update was... (7 Replies)
Discussion started by: kevintse
7 Replies

6. UNIX for Dummies Questions & Answers

newline character in a variable

variable="unix\nlinux" echo $variable expected output: unix linux :wall: can i do that ?? thanks in advance!! (3 Replies)
Discussion started by: sathish92
3 Replies

7. Shell Programming and Scripting

replacing by newline character

I have a file (pema)with a single long record which i have to break up into multiple lines Input s1aaaaaaaaaaaaaaaaaaaaaaas1bbbbbbbbbbs1cccccccccc Output s1aaaaaaaaaaaaaaaaaaaaaaa s1bbbbbbbbbb s1cccccccccc m planning to do it by replacing s1 by \ns1 \n is the new line character i... (5 Replies)
Discussion started by: pema.yozer
5 Replies

8. UNIX for Dummies Questions & Answers

How to add newline before and after a special character?

So I have a file that contains >NM_#########AUGCAUCGUAGCUAGUCGAUACUGGACUG>NM_########AUGAGUAUGUAUGAUGUAUGUAUGA where # is any digit 0-9 (the text is many repetitions of the pattern above, not just that, but all in one line), and I want it to show >NM_#########... (2 Replies)
Discussion started by: ShiGua
2 Replies

9. Shell Programming and Scripting

Remove last newline character..

Hi all.. I have a text file which looks like below: abcd efgh ijkl (blank space) I need to remove only the last (blank space) from the file. When I try wc -l the file name,the number of lines coming is 3 only, however blank space is there in the file. I have tried options like... (14 Replies)
Discussion started by: Sathya83aa
14 Replies

10. Shell Programming and Scripting

How to remove newline character if it is the only character in the entire file.?

I have a file which comes every day and the file data look's as below. Vi abc.txt a|b|c|d\n a|g|h|j\n Some times we receive the file with only a new line character in the file like vi abc.txt \n (8 Replies)
Discussion started by: rak Kundra
8 Replies
DOCBOOK2GJOTS(1)					      General Commands Manual						  DOCBOOK2GJOTS(1)

NAME
docbook2gjots - Convert a DOCBOOK file to gjots format (on stdout) SYNOPSIS
docbook2gjots [ DOCBOOK-file ] DESCRIPTION
docbook2gjots converts a DOCBOOK XML file into gjots format. docbook2gjots uses gawk(1) to perform the conversion. <preface>, <chapter>, <section>, <sect1>, <sect2>, <sect3> and <sect4> tags are used to define NewEntry and NewFolder boundaries. They should definitely have <title> tags. This is a quick and dirty hack using gawk(1) and does no formal checking of XML or SGML syntax nor does it validate against the DOCBOOK DTD. Consequently, if the syntax of the file is broken the conversion will probably fail. It is intended that a round-trip can be made so that gjots(1) can be used as a tool at all stages of DOCBOOK production - mainly as an out- line processor to help the author organise and order the work. A document may well start its life in gjots(1) as the initial thoughts are marshalled. As the document forms up, it can be converted to DOCBOOK with the following command which automatically adds tags such as <?xml...>, <para> etc: gjots2docbook -b file.gjots >file.xml docbook2pdf file.xml Or, starting with an existing DOCBOOK file: docbook2gjots file.xml >file.gjots In the latter case, the document will already have a lot of DOCBOOK tags so to convert back to docbook, add the -e and -p options: gjots2docbook -b -p -e file.gjots >file.xml docbook2pdf file.xml AUTHOR
Written by Bob Hepple <bhepple@freeshell.org> http://bhepple.freeshell.org/gjots COPYRIGHT
Copyright (c) 2002 Robert Hepple This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PAR- TICULAR PURPOSE. SEE ALSO
gjots(1), gjots2html(1), gjots2docbook(1) DOCBOOK2GJOTS(1)
All times are GMT -4. The time now is 01:54 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy