line feeds in csv


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting line feeds in csv
# 1  
Old 08-31-2005
line feeds in csv

Smilie hi all,

i have csv file with three comma separated columns
i/p file
First_Name, Address, Last_Name
XXX, "456 New albany \n newyork, Unitedstates \n 45322-33", YYY\n
ZZZ, "654 rifle park \n toronto, canada \n 43L-w3b", RRR\n

is there any way i can remove \n (newline) from the second column
between the two double quotes"..."
# 2  
Old 08-31-2005
will this do?
Code:
sed 's/\\n//g' csvFile

# 3  
Old 08-31-2005
i tried using sed commands !

thanks vgersh99
I tired that ! but it didn't work . all it does is removes all the \n from the csvfile.
( i.e ) all the data will be in one single line .
# 4  
Old 09-01-2005
Just change the pattern that vgersh99 said try something like
sed 's/\\n/\"^["]*\"'
\" for checking starting quotes ^["] for checking anything other than " (inside [] no metachr except '-' means anything so no need for \") and lastly \\n for newline. g as suggested by vgersh stands for globaly and so should not be used here.
I haven't run this (away from any Linux box) so in case of problem just fiddle with above pattern & if u still have problem plz. do tell me.

Last edited by Rakesh Ranjan; 09-01-2005 at 09:10 AM..
# 5  
Old 09-01-2005
Quote:
Originally Posted by gowrish
thanks vgersh99
I tired that ! but it didn't work . all it does is removes all the \n from the csvfile.
that's right.
Quote:
Originally Posted by gowrish
( i.e ) all the data will be in one single line .
not really. given your sample file, the output would be: [on separate lines]
Code:
First_Name, Address, Last_Name
XXX, "456 New albany  newyork, Unitedstates  45322-33", YYY
ZZZ, "654 rifle park  toronto, canada  43L-w3b", RRR

# 6  
Old 09-01-2005
ranjan

thanks man !


I tried ur suggestion, it didn't workout---i got this error msg!
sed: command garbled: s/\\n/\"^["]*\"
click on this link, there was a similar problem in this site , they had the solution too but not clear enough for me to solve my problem..
https://www.unix.com/showthread.php?t...highlight=loop
I didn't understand how they are calling the file, how the loop exactly workings
Please lookat the solution,please suggest me on this .
thanks
Gowrish
# 7  
Old 09-01-2005
Quote:
Originally Posted by Rakesh Ranjan
Just change the pattern that vgersh99 said try something like
sed 's/\\n/\"^["]*\"'
\" for checking starting quotes ^["] for checking anything other than " (inside [] no metachr except '-' means anything so no need for \") and lastly \\n for newline. g as suggested by vgersh stands for globaly and so should not be used here.
I haven't run this (away from any Linux box) so in case of problem just fiddle with above pattern & if u still have problem plz. do tell me.
I think you're confusing the syntax of 's':
Code:
s/regular expression/replacement/flags
                   Substitute   the   replacement  string   for
                  instances  of  the  regular  expression in the
                  pattern  space.   Any  character  other   than
                  backslash  or newline can be used instead of a
                  slash to delimit the RE and  the  replacement.
                  Within the RE and the replacement, the RE del-
                  imiter itself can be used as a literal charac-
                  ter if it is preceded by a backslash.
                  An ampersand (&) appearing in the  replacement
                  will  be  replaced  by the string matching the
                  RE.  The special meaning of & in this  context
                  can   be   suppressed   by   preceding  it  by
                  backslash.  The characters \n, where  n  is  a
                  digit, will be replaced by the text matched by
                  the  corresponding  backreference  expression.
                  For each backslash (\) encountered in scanning
                  replacement from beginning to end, the follow-
                  ing  character  loses  its special meaning (if
                  any).  It is unspecified what special  meaning
                  is  given  to any character other than &, \ or
                  digits.

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Extract Line and Column from CSV Line in ksh or bash format

Hi, I was doing some research and can't seem to find anything. I'm trying to automate a process by creating a script to read a csv line and column and assigning that value to a variable for the script to process it. Also if you could tell me the line and column if it's on another work ... (3 Replies)
Discussion started by: vpundit
3 Replies

2. Shell Programming and Scripting

Removing carriage return/line feeds on multiple lines

I would like to remove carriage returns/line feeds in a text file, but in a specific cadence: Read first line (Header Line 1), remove cr/lf at the end (replace it with a space ideally); Read the next line (Line of Text 2), leave the cr/lf intact; Read the next line, remove the cr/lf; Read... (14 Replies)
Discussion started by: tomr2012
14 Replies

3. Shell Programming and Scripting

useless line feeds in ldapsearch output. Howto remove with shell script?

Hi $ cat ad.sh ldapsearorg -x -LLL -h sb1131z.testbadbigcorp.org -D "CN=ADMINZZ,OU=AdminRoles,DC=testbadbigcorp,DC=org" -w "UT3w4f57lll--4...4" -b "OU=Test,DC=testbadbigcorp,DC=org" "(&(&(&(&(objectCategory=person)(objectClass=user)(lockoutTime:1.2.840.113556.1.4.804:=4294967295)))))" dn$... (3 Replies)
Discussion started by: slashdotweenie
3 Replies

4. Shell Programming and Scripting

remove line feeds followed by character

Hi everyone, I'm very new to using sed, run through some tutorials and everything but I've hit a problem that I'm unable to solve by myself. I need to remove all linefeeds that are followed by a particular character (in this case a semicolon). So basically, all lines starting with a semicolon... (5 Replies)
Discussion started by: fluffdasheep
5 Replies

5. Shell Programming and Scripting

Delimited data contains line feeds where they shouldn't be

I have some data, each record (line) ends with a line feed (\n). Each field is pipe (|) delimited. 1|short desc|long text|2001-01-01 01:01 2|short desc| long text |2002-02-02 02:02 3|short desc| long text | 2003-03-03 03:03 4|short desc | long text | 2004-04-04 04:04 ... (10 Replies)
Discussion started by: ericdp63
10 Replies

6. UNIX for Dummies Questions & Answers

.properties file and new line feeds

Hi, I have a .properties file that a read in some values in an .sh file but everytime I put it out on the server it fails. If I copy and paste the values of the .properties file on my local machine to the .properties file on the server it works just fine. Someone mentioned to see if it has dos... (3 Replies)
Discussion started by: vsekvsek
3 Replies

7. Shell Programming and Scripting

supressing carrige returns/line feeds

Hi gurus I am stripping lots of email addresses from a file with this grep "^To" file.log |awk '{print "1,"$2}' > recipients.out file.log looks something like this: oasndfoasnosf To: person@email.co.uk lsdfjosd sdlfnmsopdfwer dtlghodrgn To: person2@emailsss.com sldfnsdf I... (5 Replies)
Discussion started by: terry2009
5 Replies

8. Shell Programming and Scripting

Spurious line feeds

Hi all, I know this is **awfully** general but..... I have a script which does, basically... for file in `find command`; do some stuff more stuff echo '.\c' done I want to output the '.' char just to give an idea of progress. However, it works fine for a while and then I... (2 Replies)
Discussion started by: ajcannon
2 Replies

9. Shell Programming and Scripting

Remove line feeds

Hi, I have a fixed width flat file which has 1 as the first char and E as the last character. Some of the records have a carriage return /line feeds . how do I remove them? Let me know. Thanks VSK (8 Replies)
Discussion started by: vsk
8 Replies

10. Shell Programming and Scripting

carriage return/line feeds

Hello, I have a file that has got carriage returns in it and I want to take them out. Anyone know how I can do this in a ksh? thanks (4 Replies)
Discussion started by: pitstop
4 Replies
Login or Register to Ask a Question