Txt to csv convert


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Txt to csv convert
# 1  
Old 09-14-2009
Txt to csv convert

Hi,
I was trying some split command to pull out values like "uid=abc,ou=INTERNAL,ou=PEOPLE" into a csv file. However because of erratic nature of occurrance of rows made me stopped. Could someone help me in this? and if someone has a one liner for this?

The text file contain pattern like this :

HTML Code:
dn: uid=abc,ou=INTERNAL,ou=PEOPLE
uid: abc
epsNotesid: CN=Ai 
 
dn: uid=xyz,ou=Internal,ou=Disabled
uid: xyz
 
dn: uid=ade,ou=Internal,ou=Disabled
uid: ade
 
dn: uid=mng,ou=INTERNAL,ou=PEOPLE
uid: mng
epsNotesid: CN=Ri
 
Thanks, Prince
# 2  
Old 09-14-2009
you mean like this??
Code:
/home/>sed -n '/,*,*,/p' filename
dn: uid=abc,ou=INTERNAL,ou=PEOPLE
dn: uid=xyz,ou=Internal,ou=Disabled
dn: uid=ade,ou=Internal,ou=Disabled
dn: uid=mng,ou=INTERNAL,ou=PEOPLE

# 3  
Old 09-14-2009
Thanks for prompt reply.

Well let me roll over to simply a bit :

Txt File : ( Note Each pattern is separated by a blank line )

Code:
dn: uid=abc,ou=INTERNAL,ou=PEOPLE
uid: abc
epsNotesid: CN=Ai 
 
dn: uid=xyz,ou=Internal,ou=Disabled
uid: xyz
 
dn: uid=ade,ou=Internal,ou=Disabled
uid: ade
 
dn: uid=mng,ou=INTERNAL,ou=PEOPLE
uid: mng
epsNotesid: CN=Ri

Desired CSV File :

Code:
"uid=abc,ou=INTERNAL,ou=PEOPLE","abc","CN=Ai"
"uid=xyz,ou=Internal,ou=Disabled","xyz" 
"uid=ade,ou=Internal,ou=Disabled","ade" 
"uid=mng,ou=INTERNAL,ou=PEOPLE","mng","CN=Ri"

Hope this makes the things more clear.

Thanks, Prince

Last edited by vgersh99; 09-14-2009 at 03:56 PM.. Reason: code tags, PLEASE!
# 4  
Old 09-14-2009
nawk -f john.awk myFile

john.awk:
Code:
BEGIN {
  RS=FS=""
  OFS=","
  qq=sprintf("%c", 034)
}
{
  for(i=1;i<=NF;i++)
     printf("%c%s%c%c", qq, substr($i, index($i," ")+1), qq, (i==NF)?ORS:OFS)
}


Last edited by vgersh99; 09-14-2009 at 03:52 PM.. Reason: fixed
# 5  
Old 09-14-2009
Thanks a Lot.

However, the output comes in a single line, something like this :

bash-2.05$ nawk -f john.awk abc.txt
"uid=abc,ou=INTERNAL,ou=PEOPLE","abc","CN=Ai ","","uid=xyz,ou=Internal,ou=Disabled","xyz","","uid=ade,ou=Internal,ou=Disabled","ade","","uid=mng, ou=INTERNAL,ou=PEOPLE","mng","CN=Ri"

My expectations is in multiple lines.

Thanks, Prince
# 6  
Old 09-14-2009
given your sample input, I get:
Code:
"uid=abc,ou=INTERNAL,ou=PEOPLE","abc","CN=Ai"
"uid=xyz,ou=Internal,ou=Disabled","xyz"
"uid=ade,ou=Internal,ou=Disabled","ade"
"uid=mng,ou=INTERNAL,ou=PEOPLE","mng","CN=Ri"

what OS are you on? Works fine on Solaris.
you can try this:
Code:
BEGIN {
  RS=FS=""
  OFS=","
  ORS="\n"
  qq=sprintf("%c", 034)
}
{
  for(i=1;i<=NF;i++)
     printf("%c%s%c%c", qq, substr($i, index($i," ")+1), qq, (i==NF)?ORS:OFS)
}

# 7  
Old 09-14-2009
my OS is Solaris.

Again the same results, just wondering if newline is getting quoted leading the output to single line.

Thanks
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Convert a txt file to a CSV file

Hi , I have a Txt file which consist of 1000's of SOAP request and response and i want the file to be converted to a csv file like column a should have a soap request and column b should have the soap response . can someone assist me in achieving this please ? Thanks (2 Replies)
Discussion started by: kumarm8
2 Replies

2. Solaris

How to convert pdf file to txt?

Hello Unix gurus, I am learning unix. I have lots pdf data files. I need to convert them into txt files. Can you please guide me how to do that? Thanks in advance. Rao (1 Reply)
Discussion started by: raopatwari
1 Replies

3. Red Hat

How to convert TXT to PDF in RHEL 6?

Hello friends, I need to convert ASCII text to PDF on RHEL 6 so I did the below and could generate PDF but it has lot of junk/special characters. yum install enscript ghostscript enscript -p output.ps input.txt ps2pdf output.ps output.pdf So I download latest source of Ghostscript... (4 Replies)
Discussion started by: magnus29
4 Replies

4. Shell Programming and Scripting

Need script to convert TXT file into CSV

Hi Team, i have some script which give output in TXT format , need script to convert TXT file into CSV. Output.TXT 413. U-UU-LVDT-NOD-6002 macro_outcome_dist-8.0.0(v1_0_2) KK:1.2.494 (1234:333:aaa:2333:3:2:333:a) 414. U-UU-LVDT-NOD-6004 ... (10 Replies)
Discussion started by: Ganesh Mankar
10 Replies

5. UNIX for Dummies Questions & Answers

XML to TXT or CSV

Hi all, I am new to unix and even newer to XML :wall: I have a dataset which I need to work on and extract data from but I cant even see things. its a XML file which i need to analyse and return the results in xml as well but need to filter some of them like i would do with excel file so not... (7 Replies)
Discussion started by: A-V
7 Replies

6. UNIX for Dummies Questions & Answers

Help with a project. convert a txt to csv

Hi people. I've finally converted to linux, and I'm starting to explore the amazing capabilities of the terminal. At the moment in trying to learn how to extract text using the "grep" and "sed" command. I decided to learn by trying to figure out how to solve a practical problem. I have a schedule... (4 Replies)
Discussion started by: kugalskaper
4 Replies

7. Shell Programming and Scripting

Convert txt to csv

Hi - I am looking to convert the following text to csv. The columns may not always have data in them and they may have varying spaces but I still need to have a comma there anyway: Sample Data: ~~~~~~~ Name Email Location Phone Tom... (4 Replies)
Discussion started by: JPBovaird
4 Replies

8. Shell Programming and Scripting

how to convert XLS to CSV and DOC/RTF to TXT

Hi, i don't know anything about PERL. Can anyone help me providing PERL scripts for 1. converting XLS to CSV (and vice-versa) 2. converting DOC/RTF to TXT Thanks much Prvn (1 Reply)
Discussion started by: prvnrk
1 Replies

9. Shell Programming and Scripting

AWK CSV to TXT format, TXT file not in a correct column format

HI guys, I have created a script to read 1 column in a csv file and then place it in text file. However, when i checked out the text file, it is not in a column format... Example: CSV file contains name,age aa,11 bb,22 cc,33 After using awk to get first column TXT file... (1 Reply)
Discussion started by: mdap
1 Replies

10. UNIX for Dummies Questions & Answers

How to convert PS files to txt file?

Hi, I need to convert PS files to txt file. I thought of using ps2ascii, but its not installed in my AIX box, any other option? (2 Replies)
Discussion started by: redlotus72
2 Replies
Login or Register to Ask a Question