Save yourself some time, and merge .csv files with one easy command in Terminal.
Let's say you have a bunch of .csv files in a folder. You want to merge them into one file. How to do that?
Easy: use 'cat'

Terminal (in your /Applications/Utilities folder) is the default gateway to that command line on a Mac. With it, instead of pointing and clicking, you type your commands and your Mac does your. Download Files Using Terminal. If you’ve a direct link of the file which you want to download, you can use the following commands to download the file using the Terminal on Mac. Cd /Downloads/ Note: If you want to download the contents to any other directory replace “downloads” with the directory name. Curl -O URL of file you want. In the Terminal app on your Mac, use the mv command to move files or folders from one location to another on the same computer. The mv command moves the file or folder from its old location and puts it in the new location. For example, to move a file from your Downloads folder to a Work folder in your Documents folder.
Cat is a UNIX program that lets you concatenate files, which is what we need. It's so simple that you don't need installable apps for it. For those who want the code first and the explanation later, here is the code:
That's it.
Translated, it says: 'take all files in this folder that end with '.csv', and put them in 'merged.csv' (effectively merging them).
Bonus tip: the 'open here in Terminal' service in Mac OS X 10.7+
It is important that this command is executed in the right directory. You don't want all existing .csv files in your entire computer to be altered this way, now do you? :) You can use the terminal to navigate to the folder (as described below), but you can also use a default Mac OS X service that functions in much the same way as its counterpart in Windows: 'open here in Terminal'. It works like this.
First, go to: System Preferences > Keyboard > Shortcuts > Services
and select New terminal at Folder
:
From now on, when you select a folder in the Finder, you can right-click and find it under Services
:
We want more images!
Here are some images that may help. I had a bunch of .csv files that contained exports of Google search engine results (made by the SEOmoz toolbar). The English results were all put in a folder named en
inside the folder /meta/csv
:
Install Mac Os From Terminal
I also made sure that every single .csv only contained the data I needed. In my case, I needed to delete the first 7 rows that were included in every export:
Back to the terminal. I used cd
to go to that folder in my terminal (or use the 'New terminal at Folder' Service I described earlier):
You can see it below, i'm at macbook en
(the folder en
on my macbook) and my username is monchito
. I then executed the command:
The file merged.csv
was successfully added to the folder:
A quick check shows that the newly created .csv file contains way more rows than the individual files, so it probably worked :p
Now I can merge a great number of .csv files into one file quickly, and move on with my analysis.
Install Os X From Terminal
What's next?
If you think this was useful to you, it might be for others also. Feel free to share:
