Help with appending to a csv file


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Help with appending to a csv file
# 1  
Old 07-10-2011
Help with appending to a csv file

I am working to import a file and have almost all the information accounted for except this last item. First of all the file name is the category and this is what I need to append to the file.

The catch I believe is the fact the file name has spaces in it.
Filename CPU Products.csv

File input:
Code:
code,description,weight,cost,price,qty,category
"A4552","Intel i7 4.60GHz Processor","0.53","250.00","350.00","10"

What I need is the following:
Code:
code,description,weight,cost,price,qty,category
"A4552","Intel i7 4.60GHz Processor","0.53","250.00","350.00","10","CPU Products"

Here is what I have:

Code:
file="CPU Products.csv"
tmpfile=csvfile.tmp
tmpfile1=csvfile1.tmp
category=`basename "$file" .csv`

        cp "$file" $tmpfile
        awk '
        BEGIN {FS=OFS=","; print "code,description,weight,cost,price,qty,category"}
        ($9= "$category") ' $tmpfile > $tmpfile1

        cp $tmpfile1 "$file"


Rather than appending "CPU Products" it puts $category as the last field.

Any help is very much appreciated.

Last edited by Franklin52; 07-11-2011 at 03:14 AM.. Reason: Please use code tags for code and data samples, thank you
# 2  
Old 07-10-2011
Try:
Code:
awk '{f=FILENAME;sub("\.csv","",f);$0=$0",\""f"\""}1' "CPU Products.csv"

# 3  
Old 07-10-2011
Hi,

Using 'perl':
Code:
$ perl -pe 'next if $. == 1; chomp; $ARGV =~ s/\.[^.]+$//; $_ .= qq[,"$ARGV"\n]' "CPU Products.csv"

Regards,
Birei
# 4  
Old 07-10-2011
Kinda works

Thanks for your help!!!


The only problem is the category area has the extension on it and it has removed my header.
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Save output of updated csv file as csv file itself, part 2

Hi, I have another problem. I want to sort another csv file by the first field. result.csv SourceFile,Airspeed,GPSLatitude,GPSLongitude,Temperature,Pressure,Altitude,Roll,Pitch,Yaw /home/intannf/foto5/2015_0313_090651_219.JPG,0.,-7.77223,110.37310,30.75,996.46,148.75,180.94,182.00,63.92 ... (2 Replies)
Discussion started by: refrain
2 Replies

2. Shell Programming and Scripting

Save output of updated csv file as csv file itself

Hi, all I want to sort a csv file based on timestamp from oldest to newest and save the output as csv file itself. Here is an example of my csv file. test.csv SourceFile,DateTimeOriginal /home/intannf/foto/IMG_0739.JPG,2015:02:17 11:32:21 /home/intannf/foto/IMG_0749.JPG,2015:02:17 11:37:28... (10 Replies)
Discussion started by: refrain
10 Replies

3. Shell Programming and Scripting

Compare 2 files of csv file and match column data and create a new csv file of them

Hi, I am newbie in shell script. I need your help to solve my problem. Firstly, I have 2 files of csv and i want to compare of the contents then the output will be written in a new csv file. File1: SourceFile,DateTimeOriginal /home/intannf/foto/IMG_0713.JPG,2015:02:17 11:14:07... (8 Replies)
Discussion started by: refrain
8 Replies

4. Shell Programming and Scripting

Match columns from two csv files and update field in one of the csv file

Hi, I have a file of csv data, which looks like this: file1: 1AA,LGV_PONCEY_LES_ATHEE,1,\N,1,00020460E1,0,\N,\N,\N,\N,2,00.22335321,0.00466628 2BB,LES_POUGES_ASF,\N,200,200,00006298G1,0,\N,\N,\N,\N,1,00.30887539,0.00050312... (10 Replies)
Discussion started by: djoseph
10 Replies

5. Shell Programming and Scripting

Appending = in particular column in csv file

Hi, I have a requirement to append = in particular row in csv file. Data in csv is as follow: row1,a,a,a row2,b,b,b row3,c,c,c row4,d,d,d csv should be modified at row3 and no. of columns are not fixed but rows are. output should be as: row1,a,a,a row2,b,b,b row3,=c,=c,=c... (2 Replies)
Discussion started by: Divya1987
2 Replies

6. Shell Programming and Scripting

Ascii Mode appending extra records to csv file

I am relatively new to this forum and Unix scripting. ksh script: part 1 :will call a PL\SQL program will create 3 CSV file at the unix directory. part 2 : will sftp the files to the EFT server. Once the EFT server receives these file , it will transfer them to a shared windows folders. ... (3 Replies)
Discussion started by: developerpa
3 Replies

7. Shell Programming and Scripting

Appending a parameter value to a .csv file???

Hi I have a date which I get as parameter. I want it to be added as first column in all the rows in a csv file. I have tried the below code but no success. date=$1 awk -F"," '{print $date","$0}' z3.csv > z4.csv Could you tell the correct code for the above req.? How to use code... (1 Reply)
Discussion started by: msp2244
1 Replies

8. Shell Programming and Scripting

Blank Space is not appending in each row of CSV File - Shell Script

I am calling SQL script in my UNIX Shell script and trying to create the CSV file and my last column value of each row is 23 blank spaces. In my SQL script,the last column is like below. RPAD(' ',23,' ') -- Padding 23 blank Spaces The CSV file is generated but the sapce(23 spaces) is... (2 Replies)
Discussion started by: praka
2 Replies

9. Shell Programming and Scripting

CSV formatting with prefixing, appending and padding field

Hi I have a very large csv file with some hundreds of thousands of rows of data. The data is in the following format: Up to four alpha numeric characters for the first word. This is either set as 2 characters followed by 2 spaces, or as a single 4character word. This is then followed by an 8... (7 Replies)
Discussion started by: meself
7 Replies
Login or Register to Ask a Question