Sponsored Content
Top Forums UNIX for Dummies Questions & Answers Replace string including newline Post 302959635 by ngb on Thursday 5th of November 2015 04:32:11 AM
Old 11-05-2015
Replace string including newline

Hi,

I am trying to do some transformation on a large file and I am getting some troubles trying remove newlines only when the last character of a line is a symbol (in this case is a pipe "|").

I have tried with sed like this:

Code:
sed -i 's/|\n/|/g' my_file

or

Code:
sed -i 's/|$/|/gg' my_file


but as sed is a line operation command does not find newlines. I have also tried:

Code:
sed -i ':a;N;$!ba;s/|\n//g' my_file

This works for small files, but not for my "large" file (actually is only 4Gb).

I could do it using vi and %:s/|\n/|/g' but I need to be able to execute inside a script (also is a slow solution).

Any help is appreciatted.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

replace a newline (\n)

dear all: maybe i have a file like : 12 34 56 78 end how do write can i replace newline into NA : make the file inte : 12 NA 34 NA 56 78 END (3 Replies)
Discussion started by: jeter
3 Replies

2. UNIX for Dummies Questions & Answers

replace string with a newline string

Hi, I wanted to replace these lines in vi editor: input-- uid=ESVPEME | eriMasterDomain=EAMCS | eriCountry=El | ou=ESV uid=EPYCAR | eriMasterDomain=EAMCS | eriCountry=Argentina | ou=CEA uid=ERCFGA | eriMasterDomain=EAMCS | eriCountry=Costa | ou=ERC uid=EDGLUCU | eriMasterDomain=EAMCS... (5 Replies)
Discussion started by: hegdeshashi
5 Replies

3. Shell Programming and Scripting

Replace a string with newline

Hi all I have the problem to substitute a string with newline in Perl. Can anybody help me? And also how to replace a string with opening bracket (e.g. (START ) with a whitespace/null character? Thanks in advance. (1 Reply)
Discussion started by: my_Perl
1 Replies

4. UNIX for Dummies Questions & Answers

replace text string with a newline

I want to replace a text string with a newline. I have a long text file of random characters. I want to replace all the occurences of "pe" with a newline. How can I do that in Unix? There's a thread from 2004 saying that you can do something like this with sed by actually pressing the return... (1 Reply)
Discussion started by: aaronpoley
1 Replies

5. Shell Programming and Scripting

Help with sed matching <tag1> newline spaces <tag2> and replace the value in the same string format

Hi, I'm very new to shell scripting and have searched google and this forum for quite some time now. I have the following in my xml file: <recipients> <member>value1</member> </recipients> I need to find a string <recipients> that follows with a new-line and bunch of spaces and... (5 Replies)
Discussion started by: mgharios
5 Replies

6. Shell Programming and Scripting

replace >< with > newline <

Hi All, I have the command in PERL for performing this, but Can you please suggest me how can i perform this using AWK: My input xml file looks like this: <aaa>hello</aaa><bbb>hai</bbb> I want the output like this ( means need new line after end of each xml tag): <aaa>hello</aaa>... (1 Reply)
Discussion started by: HemaV
1 Replies

7. Shell Programming and Scripting

search string in a file and retrieve 10 lines including string line

Hi Guys, I am trying to write a perl script to search a string "Name" in the file "FILE" and also want to create a new file and push the searched string Name line along with 10 lines following the same. can anyone of you please let me know how to go about it ? (8 Replies)
Discussion started by: sukrish
8 Replies

8. Shell Programming and Scripting

Grep a string from input file and delete next three lines including the line contains string in xml

Hi, 1_strings file contains $ cat 1_strings /home/$USER/Src /home/Valid /home/Review$ cat myxml <projected value="some string" path="/home/$USER/Src"> <input 1/> <estimate value/> <somestring/> </projected> <few more lines > <projected value="some string" path="/home/$USER/check">... (4 Replies)
Discussion started by: greet_sed
4 Replies

9. Shell Programming and Scripting

Replace String With Newline

Hi, I'm struggling with a string replacement. I have an XML file which is in the following layout <FUNCTION> <PRODUCTS> <PRODUCT CODE="PRODUCE" ACTION="amend" VALIDATE="no"> <SUPPLIER PRODUCT="PRODUCT" ACTION="amend" CODE="SUPPLIER"> <STOCK_QUANTITY DATA="21"/> ... (15 Replies)
Discussion started by: Ste_Moore01
15 Replies

10. Shell Programming and Scripting

Replace newline in a string

I have a string like below: {\rtf1\fbidis\ansi\deff0{\fonttbl{\f0\fnil\fcharset0 MS Sans Serif;}{\f1\fnil MS Sans Serif;}} \viewkind4\uc1\pard\ltrpar\lang2057\f0\fs16 19/11/2010 SOME DESCRIPTION. \par \lang1033\f1\par } I have to replace the newline character with null in the... (8 Replies)
Discussion started by: Pratik4891
8 Replies
cr(1)							      General Commands Manual							     cr(1)

NAME
cr - converts text files between nix EOL and dos EOL SYNOPSIS
cr - | + <input file> <output file> DESCRIPTION
Text files, such as tle files, that come from a dos source usualy have the ^M symbol at the end of every line. Cr converts files between the dos newline format and the normal *nix newline format by stripping the ^M to convert dos to *nix, using the '-' option, or adding ^M to a *nix file to create the proper dos file when the '+' option is used. Although this extra character is not often a problem, programs like seesat5, which are data driven will encounter parsing problems when the extra character is present. It is these problems that cr is intended to repair. Options - | + One or the other of these options is required. The '-' option is used to remove ^M from all newlines found in the dos file. The '+' option is used to add ^M to every newline found in a *nix file. input file Fully delineated path to the input file. As this program is used in the dos environment as well, standard input is not used. output file Fully delineated path to the output file. As this program is used in the dos environment as well, standart output is not used. SEE ALSO
seesat5(1), seesat5(7), SEESAT5.INI(5), tle(5) BUGS
Cr is not an inteligent program. It methodicaly replaces/removes the offending character when it finds it in the correct context. Newline sequences found in contexts other than 'newline' will be replaced/removed just like those found in the proper context. Passing a binary file through cr is not advised, for this reason. Send all inqueries to Dale Scheetz <dwarf@polaris.net>. Debian Linux 2 April 96 cr(1)
All times are GMT -4. The time now is 02:31 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy